The patch titled reiserfs: dont call notify_change has been added to the -mm tree. Its filename is reiserfs-dont-call-notify_change.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/ ------------------------------------------------------ Subject: reiserfs: dont call notify_change From: Miklos Szeredi <mszeredi@xxxxxxx> Reiserfs calls notify_change() on it's private extended attribute files to resize and change ownership of these files. Replace with reiserfs_setattr(). This is equivalent, except that: - i_alloc_sem locking is not performed around reiserfs_setattr() when the size is changed - security_inode_setattr() is not called before reiserfs_setattr() - fsnotify_change() is not called after reiserfs_setattr() None of the above is necessary, since the files are private to reiserfs and inaccessible from userspace. Also remove setting of ctime on the xattr files. Based on patch by Jeff Mahoney. Signed-off-by: Miklos Szeredi <mszeredi@xxxxxxx> Acked-by: Jeff Mahoney <jeffm@xxxxxxx> Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx> Cc: Christoph Hellwig <hch@xxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/reiserfs/xattr.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff -puN fs/reiserfs/xattr.c~reiserfs-dont-call-notify_change fs/reiserfs/xattr.c --- a/fs/reiserfs/xattr.c~reiserfs-dont-call-notify_change +++ a/fs/reiserfs/xattr.c @@ -458,9 +458,9 @@ reiserfs_xattr_set(struct inode *inode, /* Resize it so we're ok to write there */ newattrs.ia_size = buffer_size; - newattrs.ia_valid = ATTR_SIZE | ATTR_CTIME; + newattrs.ia_valid = ATTR_SIZE; mutex_lock_nested(&xinode->i_mutex, I_MUTEX_XATTR); - err = notify_change(dentry, &newattrs); + err = reiserfs_setattr(dentry, &newattrs); if (err) goto out_filp; @@ -810,7 +810,7 @@ reiserfs_chown_xattrs_filler(void *buf, } if (!S_ISDIR(xafile->d_inode->i_mode)) - err = notify_change(xafile, attrs); + err = reiserfs_setattr(xafile, attrs); dput(xafile); return err; @@ -843,7 +843,7 @@ int reiserfs_chown_xattrs(struct inode * lock_kernel(); - attrs->ia_valid &= (ATTR_UID | ATTR_GID | ATTR_CTIME); + attrs->ia_valid &= (ATTR_UID | ATTR_GID); buf.xadir = dir; buf.attrs = attrs; buf.inode = inode; @@ -854,7 +854,7 @@ int reiserfs_chown_xattrs(struct inode * goto out_dir; } - err = notify_change(dir, attrs); + err = reiserfs_setattr(dir, attrs); unlock_kernel(); out_dir: _ Patches currently in -mm which might be from mszeredi@xxxxxxx are git-unprivileged-mounts.patch lockd-dont-return-eagain-for-a-permanent-error.patch locks-add-special-return-value-for-asynchronous-locks.patch locks-cleanup-code-duplication.patch locks-allow-lock-to-return-file_lock_deferred.patch fuse-prepare-lookup-for-nfs-export.patch fuse-add-export-operations.patch fuse-add-fuse_lookup_name-helper.patch fuse-nfs-export-special-lookups.patch fuse-lockd-support.patch nfsd-clean-up-mnt_want_write-calls.patch cgroup-dont-call-vfs_mkdir.patch reiserfs-dont-call-vfs_rmdir.patch reiserfs-dont-call-notify_change.patch sysfs-dont-call-notify_change.patch hpfs-dont-call-notify_change.patch fat-dont-call-notify_change.patch hpfs-dont-call-permission.patch hppfs-remove-hppfs_permission.patch gfs2-dont-call-permission.patch vfs-immutable-inode-checking-cleanup.patch vfs-truncate-dont-check-immutable-twice.patch vfs-create-file_truncate-helper.patch vfs-utimes-immutable-fix.patch vfs-utimes-cleanup.patch vfs-dcache-cleanups.patch vfs-fix-sys_getcwd-for-detached-mounts.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html