Commit 7c1ecabc authored by Herbert Xu's avatar Herbert Xu Committed by Yi Yang
Browse files

crypto: api - Use work queue in crypto_destroy_instance

mainline inclusion
from mainline-v6.6-rc1
commit 9ae4577b
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I8J49F
CVE: NA

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9ae4577bc077a7e32c3c7d442c95bc76865c0f17



--------------------------------

The function crypto_drop_spawn expects to be called in process
context.  However, when an instance is unregistered while it still
has active users, the last user may cause the instance to be freed
in atomic context.

Fix this by delaying the freeing to a work queue.

Fixes: 6bfd4809 ("[CRYPTO] api: Added spawns")
Reported-by: default avatarFlorent Revest <revest@chromium.org>
Reported-by: default avatar <syzbot+d769eed29cc42d75e2a3@syzkaller.appspotmail.com>
Reported-by: default avatar <syzbot+610ec0671f51e838436e@syzkaller.appspotmail.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
Tested-by: default avatarFlorent Revest <revest@chromium.org>
Acked-by: default avatarFlorent Revest <revest@chromium.org>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>

conflicts:
	crypto/algapi.c
	include/crypto/algapi.h

Signed-off-by: default avatarYi Yang <yiyang13@huawei.com>
parent d6bd8efe
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment