CIFS is failing to propagate the inode_setattr() return value. Signed-off-by: Andrew Morton --- 25-akpm/fs/cifs/inode.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) diff -puN fs/cifs/inode.c~cifs_setattr-retval-fix fs/cifs/inode.c --- 25/fs/cifs/inode.c~cifs_setattr-retval-fix 2004-06-26 14:42:54.386081584 -0700 +++ 25-akpm/fs/cifs/inode.c 2004-06-26 14:43:16.864664320 -0700 @@ -954,7 +954,8 @@ cifs_setattr(struct dentry *direntry, st } /* do not need local check to inode_check_ok since the server does that */ - inode_setattr(direntry->d_inode, attrs); + if (!rc) + rc = inode_setattr(direntry->d_inode, attrs); if (full_path) kfree(full_path); FreeXid(xid); _