linux-next: manual merge of the fsnotify tree with the vfs tree

From: Stephen Rothwell
Date: Mon Feb 01 2010 - 23:26:17 EST


Hi Eric,

Today's linux-next merge of the fsnotify tree got a conflict in
kernel/audit_tree.c between commit
1a527a2c261ad15dd15d5ee7763d3afcd8c084e9 ("new helper: iterate_mounts()")
from the vfs tree and commits 0bb4b47eebb9d06546c9beae77dc283fbb43ea35
("audit: reimplement audit_trees using fsnotify rather than inotify")
and 98d4301cc7c8828ea41432a62a3216212ffda250 ("fsnotify: put inode
specific fields in an fsnotify_mark in a union") from the fsnotify tree.

I think I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx

diff --cc kernel/audit_tree.c
index 028e856,a9167f9..0000000
--- a/kernel/audit_tree.c
+++ b/kernel/audit_tree.c
@@@ -581,12 -594,20 +598,13 @@@ void audit_trim_trees(void
if (!root_mnt)
goto skip_it;

- list_add_tail(&list, &root_mnt->mnt_list);
spin_lock(&hash_lock);
list_for_each_entry(node, &tree->chunks, list) {
- struct inode *inode = find_chunk(node)->watch.inode;
- struct audit_chunk *chunk = find_chunk(node);
+ /* this could be NULL if the watch is dieing else where... */
- struct inode *inode = chunk->mark.i.inode;
- struct vfsmount *mnt;
++ struct inode *inode = find_chunk(node)->mark.i.inode;
node->index |= 1U<<31;
- list_for_each_entry(mnt, &list, mnt_list) {
- if (mnt->mnt_root->d_inode == inode) {
- node->index &= ~(1U<<31);
- break;
- }
- }
+ if (iterate_mounts(compare_root, inode, root_mnt))
+ node->index &= ~(1U<<31);
}
spin_unlock(&hash_lock);
trim_marked(tree);
--
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/