diff options
Diffstat (limited to 'block')
-rw-r--r-- | block/cmd-filter.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/block/cmd-filter.c b/block/cmd-filter.c index 79c14996ac11..e669aed4c6bc 100644 --- a/block/cmd-filter.c +++ b/block/cmd-filter.c | |||
@@ -211,14 +211,10 @@ int blk_register_filter(struct gendisk *disk) | |||
211 | { | 211 | { |
212 | int ret; | 212 | int ret; |
213 | struct blk_cmd_filter *filter = &disk->queue->cmd_filter; | 213 | struct blk_cmd_filter *filter = &disk->queue->cmd_filter; |
214 | struct kobject *parent = kobject_get(disk->holder_dir->parent); | ||
215 | 214 | ||
216 | if (!parent) | 215 | ret = kobject_init_and_add(&filter->kobj, &rcf_ktype, |
217 | return -ENODEV; | 216 | &disk_to_dev(disk)->kobj, |
218 | |||
219 | ret = kobject_init_and_add(&filter->kobj, &rcf_ktype, parent, | ||
220 | "%s", "cmd_filter"); | 217 | "%s", "cmd_filter"); |
221 | |||
222 | if (ret < 0) | 218 | if (ret < 0) |
223 | return ret; | 219 | return ret; |
224 | 220 | ||
@@ -231,7 +227,6 @@ void blk_unregister_filter(struct gendisk *disk) | |||
231 | struct blk_cmd_filter *filter = &disk->queue->cmd_filter; | 227 | struct blk_cmd_filter *filter = &disk->queue->cmd_filter; |
232 | 228 | ||
233 | kobject_put(&filter->kobj); | 229 | kobject_put(&filter->kobj); |
234 | kobject_put(disk->holder_dir->parent); | ||
235 | } | 230 | } |
236 | EXPORT_SYMBOL(blk_unregister_filter); | 231 | EXPORT_SYMBOL(blk_unregister_filter); |
237 | #endif | 232 | #endif |