[PATCH 2/3] dnotify: patches for tree-watching fsnotify interface

From: Joris Dolderer
Date: Fri Feb 12 2010 - 16:10:49 EST


Modify dnotify for the new tree-watching fsnotify interface: check
whether an event came from a child or a far descent.
Modify fsnotify_recalc_inode_mask call.

Signed-off-by: Joris Dolderer <vorstadtkind@xxxxxxxxxxxxxx>
---
diff --git a/fs/notify/dnotify/dnotify.c b/fs/notify/dnotify/dnotify.c
index 7e54e52..6ef23cf 100644
--- a/fs/notify/dnotify/dnotify.c
+++ b/fs/notify/dnotify/dnotify.c
@@ -71,7 +71,7 @@ static void dnotify_recalc_inode_mask(struct
fsnotify_mark_entry *entry) return;

if (entry->inode)
- fsnotify_recalc_inode_mask(entry->inode);
+ fsnotify_recalc_inode_mask(entry->inode, false);
}

/*
@@ -91,7 +91,12 @@ static int dnotify_handle_event(struct
fsnotify_group *group, struct dnotify_struct *dn;
struct dnotify_struct **prev;
struct fown_struct *fown;
- __u32 test_mask = event->mask & ~FS_EVENT_ON_CHILD;
+ __u32 test_mask;
+
+ if (event->mask & FS_EVENT_ON_DESCENT)
+ return 0;
+
+ test_mask = event->mask & ~FS_EVENT_ON_CHILD;

to_tell = event->to_tell;

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/