fsnotify: add flags to fsnotify_mark_entries

To differentiate between inode and vfsmount (or other future) types of
marks we add a flags field and set the inode bit on inode marks (the only
currently supported type of mark)

Signed-off-by: Eric Paris <eparis@redhat.com>
This commit is contained in:
Eric Paris 2009-12-17 21:24:24 -05:00
Родитель 4136510dd6
Коммит 098cf2fc77
2 изменённых файлов: 5 добавлений и 0 удалений

Просмотреть файл

@ -322,6 +322,8 @@ int fsnotify_add_mark(struct fsnotify_mark_entry *entry,
if (unlikely(!inode)) if (unlikely(!inode))
return -EINVAL; return -EINVAL;
entry->flags = FSNOTIFY_MARK_FLAG_INODE;
/* /*
* if this group isn't being testing for inode type events we need * if this group isn't being testing for inode type events we need
* to start testing * to start testing

Просмотреть файл

@ -267,6 +267,9 @@ struct fsnotify_mark_entry {
struct fsnotify_vfsmount_mark m; struct fsnotify_vfsmount_mark m;
}; };
struct list_head free_g_list; /* tmp list used when freeing this mark */ struct list_head free_g_list; /* tmp list used when freeing this mark */
#define FSNOTIFY_MARK_FLAG_INODE 0x01
#define FSNOTIFY_MARK_FLAG_VFSMOUNT 0x02
unsigned int flags; /* vfsmount or inode mark? */
void (*free_mark)(struct fsnotify_mark_entry *entry); /* called on final put+free */ void (*free_mark)(struct fsnotify_mark_entry *entry); /* called on final put+free */
}; };