diff options
author | Peter Rajnoha <prajnoha@redhat.com> | 2010-03-06 02:32:31 +0000 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2010-03-06 02:32:31 +0000 |
commit | 3abf85b5b5851b5f28d3d8a920ebb844edd08352 (patch) | |
tree | b59e5c9322cc116b0ce5dc183d3b8286080c6031 /drivers/md/dm.c | |
parent | a97f925a32aad2a37971d7bfb657006acf04e42d (diff) | |
download | op-kernel-dev-3abf85b5b5851b5f28d3d8a920ebb844edd08352.zip op-kernel-dev-3abf85b5b5851b5f28d3d8a920ebb844edd08352.tar.gz |
dm ioctl: introduce flag indicating uevent was generated
Set a new DM_UEVENT_GENERATED_FLAG when returning from ioctls to
indicate that a uevent was actually generated. This tells the userspace
caller that it may need to wait for the event to be processed.
Signed-off-by: Peter Rajnoha <prajnoha@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Diffstat (limited to 'drivers/md/dm.c')
-rw-r--r-- | drivers/md/dm.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 7199846..d21e128 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -2618,18 +2618,19 @@ out: /*----------------------------------------------------------------- * Event notification. *---------------------------------------------------------------*/ -void dm_kobject_uevent(struct mapped_device *md, enum kobject_action action, +int dm_kobject_uevent(struct mapped_device *md, enum kobject_action action, unsigned cookie) { char udev_cookie[DM_COOKIE_LENGTH]; char *envp[] = { udev_cookie, NULL }; if (!cookie) - kobject_uevent(&disk_to_dev(md->disk)->kobj, action); + return kobject_uevent(&disk_to_dev(md->disk)->kobj, action); else { snprintf(udev_cookie, DM_COOKIE_LENGTH, "%s=%u", DM_COOKIE_ENV_VAR_NAME, cookie); - kobject_uevent_env(&disk_to_dev(md->disk)->kobj, action, envp); + return kobject_uevent_env(&disk_to_dev(md->disk)->kobj, + action, envp); } } |