diff options
Diffstat (limited to 'drivers/md/dm-sysfs.c')
| -rw-r--r-- | drivers/md/dm-sysfs.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/md/dm-sysfs.c b/drivers/md/dm-sysfs.c index 84d2b91e4ef..c62c5ab6aed 100644 --- a/drivers/md/dm-sysfs.c +++ b/drivers/md/dm-sysfs.c @@ -86,6 +86,7 @@ static const struct sysfs_ops dm_sysfs_ops = {  static struct kobj_type dm_ktype = {  	.sysfs_ops	= &dm_sysfs_ops,  	.default_attrs	= dm_attrs, +	.release	= dm_kobject_release,  };  /* @@ -104,5 +105,7 @@ int dm_sysfs_init(struct mapped_device *md)   */  void dm_sysfs_exit(struct mapped_device *md)  { -	kobject_put(dm_kobject(md)); +	struct kobject *kobj = dm_kobject(md); +	kobject_put(kobj); +	wait_for_completion(dm_get_completion_from_kobject(kobj));  }  | 
