]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
macsec: use rcu_work to defer TX SA crypto cleanup out of softirq
authorJinliang Zheng <alexjlzheng@tencent.com>
Mon, 11 May 2026 15:31:00 +0000 (23:31 +0800)
committerJakub Kicinski <kuba@kernel.org>
Thu, 14 May 2026 02:03:05 +0000 (19:03 -0700)
commit552cc2306c3d87632f44a655737d1d367c2a3295
tree873d43259e428b340f6dd02e6538323674bae4c2
parent6624bba469a325ecd699feae400b77cd11c76b98
macsec: use rcu_work to defer TX SA crypto cleanup out of softirq

free_txsa() is an RCU callback running in softirq context, but calls
crypto_free_aead() which can invoke vunmap() internally on hardware
crypto drivers (e.g. hisi_sec2), triggering a kernel crash.

Use rcu_work to defer the cleanup to a workqueue, for the same reasons
as the analogous fix to free_rxsa() in the previous patch.

Fixes: c09440f7dcb3 ("macsec: introduce IEEE 802.1AE driver")
Signed-off-by: Jinliang Zheng <alexjlzheng@tencent.com>
Reviewed-by: Sabrina Dubroca <sd@queasysnail.net>
Link: https://patch.msgid.link/20260511153102.2640368-4-alexjlzheng@tencent.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/macsec.c
include/net/macsec.h