Signed-off-by: Erez Zadok <ezk@xxxxxxxxxxxxx> --- fs/unionfs/inode.c | 9 +++++---- fs/unionfs/rename.c | 2 +- fs/unionfs/subr.c | 8 ++++++-- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/fs/unionfs/inode.c b/fs/unionfs/inode.c index 169365c..bcefe45 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; } } -- 1.5.2.2 - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html