aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md/dm.c
diff options
context:
space:
mode:
authorPeter Rajnoha <prajnoha@redhat.com>2010-03-06 02:32:31 +0000
committerAlasdair G Kergon <agk@redhat.com>2010-03-06 02:32:31 +0000
commit3abf85b5b5851b5f28d3d8a920ebb844edd08352 (patch)
treeb59e5c9322cc116b0ce5dc183d3b8286080c6031 /drivers/md/dm.c
parenta97f925a32aad2a37971d7bfb657006acf04e42d (diff)
downloadkernel_samsung_smdk4412-3abf85b5b5851b5f28d3d8a920ebb844edd08352.zip
kernel_samsung_smdk4412-3abf85b5b5851b5f28d3d8a920ebb844edd08352.tar.gz
kernel_samsung_smdk4412-3abf85b5b5851b5f28d3d8a920ebb844edd08352.tar.bz2
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.c7
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);
}
}