Hi Eric, Today's linux-next merge of the fsnotify tree got a conflict in include/linux/fsnotify.h between commits 123df2944c436c80640c4281c5bc9c7950b18687 ("Lose the new_name argument of fsnotify_move()") and cccc6bba3f771ef29b33e4f79e70ebc3dba245b0 ("Lose the first argument of audit_inode_child()") from the vfs tree and commits 8b37e6e1cdff433157a7ac8448789e23d0f581b9 ("inotify: remove inotify in kernel interface") and 2df5764e29a813f6ba63be094ab8aadc704a78fd ("fsnotify: use unsigned char * for dentry->d_name.name") from the fsnotify tree. I fixed it up (see below) and can carry the fixes as necessary. -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc include/linux/fsnotify.h index df8fd9a,bd99bf5..0000000 --- a/include/linux/fsnotify.h +++ b/include/linux/fsnotify.h @@@ -65,11 -77,12 +77,10 @@@ static inline void fsnotify_link_count( * fsnotify_move - file old_name at old_dir was moved to new_name at new_dir */ static inline void fsnotify_move(struct inode *old_dir, struct inode *new_dir, - const char *old_name, + const unsigned char *old_name, - const unsigned char *new_name, - int isdir, struct inode *target, - struct dentry *moved) + int isdir, struct inode *target, struct dentry *moved) { struct inode *source = moved->d_inode; - u32 in_cookie = inotify_get_cookie(); u32 fs_cookie = fsnotify_get_cookie(); __u32 old_dir_mask = (FS_EVENT_ON_CHILD | FS_MOVED_FROM); __u32 new_dir_mask = (FS_EVENT_ON_CHILD | FS_MOVED_TO); @@@ -87,24 -98,13 +97,12 @@@ fsnotify(old_dir, old_dir_mask, old_dir, FSNOTIFY_EVENT_INODE, old_name, fs_cookie); fsnotify(new_dir, new_dir_mask, new_dir, FSNOTIFY_EVENT_INODE, new_name, fs_cookie); - if (target) { - inotify_inode_queue_event(target, IN_DELETE_SELF, 0, NULL, NULL); - inotify_inode_is_dead(target); - - /* this is really a link_count change not a removal */ + if (target) fsnotify_link_count(target); - } - if (source) { - inotify_inode_queue_event(source, IN_MOVE_SELF, 0, NULL, NULL); + if (source) fsnotify(source, FS_MOVE_SELF, moved->d_inode, FSNOTIFY_EVENT_INODE, NULL, 0); - } - - audit_inode_child(new_name, moved, new_dir); + audit_inode_child(moved, new_dir); } /* @@@ -145,9 -150,7 +148,7 @@@ static inline void fsnotify_inoderemove */ static inline void fsnotify_create(struct inode *inode, struct dentry *dentry) { - inotify_inode_queue_event(inode, IN_CREATE, 0, dentry->d_name.name, - dentry->d_inode); - audit_inode_child(dentry->d_name.name, dentry, inode); + audit_inode_child(dentry, inode); fsnotify(inode, FS_CREATE, dentry->d_inode, FSNOTIFY_EVENT_INODE, dentry->d_name.name, 0); } @@@ -159,10 -162,8 +160,8 @@@ */ static inline void fsnotify_link(struct inode *dir, struct inode *inode, struct dentry *new_dentry) { - inotify_inode_queue_event(dir, IN_CREATE, 0, new_dentry->d_name.name, - inode); fsnotify_link_count(inode); - audit_inode_child(new_dentry->d_name.name, new_dentry, dir); + audit_inode_child(new_dentry, dir); fsnotify(dir, FS_CREATE, inode, FSNOTIFY_EVENT_INODE, new_dentry->d_name.name, 0); } @@@ -175,8 -176,7 +174,7 @@@ static inline void fsnotify_mkdir(struc __u32 mask = (FS_CREATE | FS_IN_ISDIR); struct inode *d_inode = dentry->d_inode; - inotify_inode_queue_event(inode, mask, 0, dentry->d_name.name, d_inode); - audit_inode_child(dentry->d_name.name, dentry, inode); + audit_inode_child(dentry, inode); fsnotify(inode, mask, d_inode, FSNOTIFY_EVENT_INODE, dentry->d_name.name, 0); } -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html