block: Fix double free in blk_integrity_unregister
Commit 3839e4b
introduced a kobject_put but failed to remove the
kmem_cache_free beneath it, leading to a double free.
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
This commit is contained in:
parent
892b6f90db
commit
e817bf3f68
|
@ -432,7 +432,6 @@ void blk_integrity_unregister(struct gendisk *disk)
|
||||||
kobject_uevent(&bi->kobj, KOBJ_REMOVE);
|
kobject_uevent(&bi->kobj, KOBJ_REMOVE);
|
||||||
kobject_del(&bi->kobj);
|
kobject_del(&bi->kobj);
|
||||||
kobject_put(&bi->kobj);
|
kobject_put(&bi->kobj);
|
||||||
kmem_cache_free(integrity_cachep, bi);
|
|
||||||
disk->integrity = NULL;
|
disk->integrity = NULL;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(blk_integrity_unregister);
|
EXPORT_SYMBOL(blk_integrity_unregister);
|
||||||
|
|
Loading…
Reference in New Issue