Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

authored by

Martin K. Petersen and committed by
Jens Axboe
e817bf3f 892b6f90

-1
-1
block/blk-integrity.c
··· 432 432 kobject_uevent(&bi->kobj, KOBJ_REMOVE); 433 433 kobject_del(&bi->kobj); 434 434 kobject_put(&bi->kobj); 435 - kmem_cache_free(integrity_cachep, bi); 436 435 disk->integrity = NULL; 437 436 } 438 437 EXPORT_SYMBOL(blk_integrity_unregister);