Push to branch refs/heads/master:
7de45f04a89874a781ccf990c52059fb21077bcb -->
  6f938cc42748aedfd71d7ceccc41eec5d62a4b24

 fs/wrapfs/dentry.c |  6 +++---
 fs/wrapfs/file.c   |  6 +++---
 fs/wrapfs/inode.c  |  6 +++---
 fs/wrapfs/lookup.c | 22 ++++++++++------------
 fs/wrapfs/main.c   |  6 +++---
 fs/wrapfs/mmap.c   |  6 +++---
 fs/wrapfs/super.c  |  6 +++---
 fs/wrapfs/wrapfs.h |  6 +++---
 8 files changed, 31 insertions(+), 33 deletions(-)

commit 6f938cc42748aedfd71d7ceccc41eec5d62a4b24
Author: Erez Zadok <e...@cs.sunysb.edu>
Date:   Sat Feb 18 19:11:22 2017 -0500

    Wrapfs: ->iget fixes
    
    Change where we igrab/iput to ensure we always hold a valid lower_inode.
    Return ENOMEM (not EACCES) if iget5_locked returns NULL.
    
    Signed-off-by: Erez Zadok <e...@cs.sunysb.edu>

commit d0702b8738df176c2b38e1045d8820fc93f4b85f
Author: Erez Zadok <e...@cs.sunysb.edu>
Date:   Sat Feb 18 15:18:34 2017 -0500

    Wrapfs: update copyrights for 2017
    
    Signed-off-by: Erez Zadok <e...@cs.sunysb.edu>

diff --git a/fs/wrapfs/dentry.c b/fs/wrapfs/dentry.c
index 4593552..2c5aee8 100644
--- a/fs/wrapfs/dentry.c
+++ b/fs/wrapfs/dentry.c
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
diff --git a/fs/wrapfs/file.c b/fs/wrapfs/file.c
index 95a9a75..6028854 100644
--- a/fs/wrapfs/file.c
+++ b/fs/wrapfs/file.c
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
diff --git a/fs/wrapfs/inode.c b/fs/wrapfs/inode.c
index b1b330a..9653bba 100644
--- a/fs/wrapfs/inode.c
+++ b/fs/wrapfs/inode.c
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
diff --git a/fs/wrapfs/lookup.c b/fs/wrapfs/lookup.c
index afa5063..2049958 100644
--- a/fs/wrapfs/lookup.c
+++ b/fs/wrapfs/lookup.c
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
@@ -73,8 +73,9 @@ struct inode *wrapfs_iget(struct super_block *sb, struct 
inode *lower_inode)
 {
        struct wrapfs_inode_info *info;
        struct inode *inode; /* the new inode to return */
-       int err;
 
+       if (!igrab(lower_inode))
+               return ERR_PTR(-ESTALE);
        inode = iget5_locked(sb, /* our superblock */
                             /*
                              * hashval: we use inode number, but we can
@@ -86,22 +87,19 @@ struct inode *wrapfs_iget(struct super_block *sb, struct 
inode *lower_inode)
                             wrapfs_inode_set, /* inode init function */
                             lower_inode); /* data passed to test+set fxns */
        if (!inode) {
-               err = -EACCES;
                iput(lower_inode);
-               return ERR_PTR(err);
+               return ERR_PTR(-ENOMEM);
        }
-       /* if found a cached inode, then just return it */
-       if (!(inode->i_state & I_NEW))
+       /* if found a cached inode, then just return it (after iput) */
+       if (!(inode->i_state & I_NEW)) {
+               iput(lower_inode);
                return inode;
+       }
 
        /* initialize new inode */
        info = WRAPFS_I(inode);
 
        inode->i_ino = lower_inode->i_ino;
-       if (!igrab(lower_inode)) {
-               err = -ESTALE;
-               return ERR_PTR(err);
-       }
        wrapfs_set_lower_inode(inode, lower_inode);
 
        inode->i_version++;
diff --git a/fs/wrapfs/main.c b/fs/wrapfs/main.c
index c429654..991be39 100644
--- a/fs/wrapfs/main.c
+++ b/fs/wrapfs/main.c
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
diff --git a/fs/wrapfs/mmap.c b/fs/wrapfs/mmap.c
index 93744a7..17508ba 100644
--- a/fs/wrapfs/mmap.c
+++ b/fs/wrapfs/mmap.c
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
diff --git a/fs/wrapfs/super.c b/fs/wrapfs/super.c
index 61ccd67..5221ba3 100644
--- a/fs/wrapfs/super.c
+++ b/fs/wrapfs/super.c
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
diff --git a/fs/wrapfs/wrapfs.h b/fs/wrapfs/wrapfs.h
index 93d2643..bcac3f3 100644
--- a/fs/wrapfs/wrapfs.h
+++ b/fs/wrapfs/wrapfs.h
@@ -1,8 +1,8 @@
 /*
- * Copyright (c) 1998-2015 Erez Zadok
+ * Copyright (c) 1998-2017 Erez Zadok
  * Copyright (c) 2009     Shrikar Archak
- * Copyright (c) 2003-2015 Stony Brook University
- * Copyright (c) 2003-2015 The Research Foundation of SUNY
+ * Copyright (c) 2003-2017 Stony Brook University
+ * Copyright (c) 2003-2017 The Research Foundation of SUNY
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as

_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
unionfs-cvs@fsl.cs.sunysb.edu
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs

Reply via email to