commit 8b31b6a681c851723c8a5f65fde996328c6d51ae
Author: Erez Zadok <[EMAIL PROTECTED]>
Date:   Thu Nov 1 01:38:09 2007 -0400

    Unionfs: don't printk an error if it's due to common copyup
    
    Signed-off-by: Erez Zadok <[EMAIL PROTECTED]>

diff --git a/fs/unionfs/inode.c b/fs/unionfs/inode.c
index 9da1a71..9b2d573 100644
--- a/fs/unionfs/inode.c
+++ b/fs/unionfs/inode.c
@@ -465,10 +465,11 @@ static int unionfs_symlink(struct inode *dir, struct 
dentry *dentry,
                        if (!lower_dentry || IS_ERR(lower_dentry)) {
                                if (IS_ERR(lower_dentry))
                                        err = PTR_ERR(lower_dentry);
-
-                               printk(KERN_ERR "unionfs: lower dentry "
-                                      "NULL (or error) for bindex = %d\n",
-                                      bindex);
+                               if (!IS_COPYUP_ERR(err))
+                                       printk(KERN_ERR
+                                              "unionfs: create_parents for "
+                                              "symlink failed: bindex=%d "
+                                              "err=%d\n", bindex, err);
                                continue;
                        }
                }
diff --git a/fs/unionfs/rename.c b/fs/unionfs/rename.c
index 1ab474f..4a35b5e 100644
--- a/fs/unionfs/rename.c
+++ b/fs/unionfs/rename.c
@@ -41,7 +41,7 @@ static int __unionfs_rename(struct inode *old_dir, struct 
dentry *old_dentry,
                                       bindex);
                if (IS_ERR(lower_new_dentry)) {
                        err = PTR_ERR(lower_new_dentry);
-                       if (err == -EROFS)
+                       if (IS_COPYUP_ERR(err))
                                goto out;
                        printk(KERN_ERR "unionfs: error creating directory "
                               "tree for rename, bindex=%d err=%d\n",
diff --git a/fs/unionfs/subr.c b/fs/unionfs/subr.c
index d97086a..968ee8c 100644
--- a/fs/unionfs/subr.c
+++ b/fs/unionfs/subr.c
@@ -61,8 +61,12 @@ int create_whiteout(struct dentry *dentry, int start)
                                                      dentry->d_name.name,
                                                      bindex);
                        if (!lower_dentry || IS_ERR(lower_dentry)) {
-                               printk(KERN_ERR "unionfs: create_parents "
-                                      "failed for bindex = %d\n", bindex);
+                               int ret = PTR_ERR(lower_dentry);
+                               if (!IS_COPYUP_ERR(ret))
+                                       printk(KERN_ERR
+                                              "unionfs: create_parents for "
+                                              "whiteout failed: bindex=%d "
+                                              "err=%d\n", bindex, ret);
                                continue;
                        }
                }
_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs

Reply via email to