4.20-stable review patch. If anyone has any objections, please let me know. ------------------ [ Upstream commit 8b2db98e814a5ec45e8800fc22ca9000ae0a517b ] memory allocated by kmem_cache_alloc() should be freed using kmem_cache_free(), not kfree(). Fixes: ad669505c4e9 ("scsi: target/core: Make sure that target_wait_for_sess_cmds() waits long enough") Signed-off-by: Wei Yongjun <weiyongjun1@xxxxxxxxxx> Reviewed-by: Bart Van Assche <bvanassche@xxxxxxx> Signed-off-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> --- drivers/target/target_core_transport.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c index ffa5b9f771b57..900442605c72f 100644 --- a/drivers/target/target_core_transport.c +++ b/drivers/target/target_core_transport.c @@ -266,7 +266,7 @@ struct se_session *transport_alloc_session(enum target_prot_op sup_prot_ops) } ret = transport_init_session(se_sess); if (ret < 0) { - kfree(se_sess); + kmem_cache_free(se_sess_cache, se_sess); return ERR_PTR(ret); } se_sess->sup_prot_ops = sup_prot_ops; -- 2.19.1