diff options
author | Joel Becker <joel.becker@oracle.com> | 2006-10-06 20:33:23 -0400 |
---|---|---|
committer | Mark Fasheh <mark.fasheh@oracle.com> | 2007-07-10 20:11:01 -0400 |
commit | 299894cc9001b09e3e9685f2709b49e7e1092ccc (patch) | |
tree | 2a2e9bb69d2393bf620a34daea17e52ed9f9e5d7 /include/linux/configfs.h | |
parent | 6d748924b753d63a57dad130fdf11f64c27ff54b (diff) |
configfs: accessing item hierarchy during rmdir(2)
Add a notification callback, ops->disconnect_notify(). It has the same
prototype as ->drop_item(), but it will be called just before the item
linkage is broken. This way, configfs users who want to do work while
the object is still in the heirarchy have a chance.
Client drivers will still need to config_item_put() in their
->drop_item(), if they implement it. They need do nothing in
->disconnect_notify(). They don't have to provide it if they don't
care. But someone who wants to be notified before ci_parent is set to
NULL can now be notified.
Signed-off-by: Joel Becker <joel.becker@oracle.com>
Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Diffstat (limited to 'include/linux/configfs.h')
-rw-r--r-- | include/linux/configfs.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/configfs.h b/include/linux/configfs.h index 5ce0fc4e3b5b..8227e730dac7 100644 --- a/include/linux/configfs.h +++ b/include/linux/configfs.h | |||
@@ -169,6 +169,7 @@ struct configfs_group_operations { | |||
169 | struct config_item *(*make_item)(struct config_group *group, const char *name); | 169 | struct config_item *(*make_item)(struct config_group *group, const char *name); |
170 | struct config_group *(*make_group)(struct config_group *group, const char *name); | 170 | struct config_group *(*make_group)(struct config_group *group, const char *name); |
171 | int (*commit_item)(struct config_item *item); | 171 | int (*commit_item)(struct config_item *item); |
172 | void (*disconnect_notify)(struct config_group *group, struct config_item *item); | ||
172 | void (*drop_item)(struct config_group *group, struct config_item *item); | 173 | void (*drop_item)(struct config_group *group, struct config_item *item); |
173 | }; | 174 | }; |
174 | 175 | ||