lkml.org 
[lkml]   [2010]   [Feb]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectlinux-next: manual merge of the fsnotify tree with the vfs tree
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@canb.auug.org.au

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);
}


\
 
 \ /
  Last update: 2010-02-09 06:39    [W:0.028 / U:2.640 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site