{"id":"CVE-2023-53581","summary":"net/mlx5e: Check for NOT_READY flag state after locking","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/mlx5e: Check for NOT_READY flag state after locking\n\nCurrently the check for NOT_READY flag is performed before obtaining the\nnecessary lock. This opens a possibility for race condition when the flow\nis concurrently removed from unready_flows list by the workqueue task,\nwhich causes a double-removal from the list and a crash[0]. Fix the issue\nby moving the flag check inside the section protected by\nuplink_priv-\u003eunready_flows_lock mutex.\n\n[0]:\n[44376.389654] general protection fault, probably for non-canonical address 0xdead000000000108: 0000 [#1] SMP\n[44376.391665] CPU: 7 PID: 59123 Comm: tc Not tainted 6.4.0-rc4+ #1\n[44376.392984] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014\n[44376.395342] RIP: 0010:mlx5e_tc_del_fdb_flow+0xb3/0x340 [mlx5_core]\n[44376.396857] Code: 00 48 8b b8 68 ce 02 00 e8 8a 4d 02 00 4c 8d a8 a8 01 00 00 4c 89 ef e8 8b 79 88 e1 48 8b 83 98 06 00 00 48 8b 93 90 06 00 00 \u003c48\u003e 89 42 08 48 89 10 48 b8 00 01 00 00 00 00 ad de 48 89 83 90 06\n[44376.399167] RSP: 0018:ffff88812cc97570 EFLAGS: 00010246\n[44376.399680] RAX: dead000000000122 RBX: ffff8881088e3800 RCX: ffff8881881bac00\n[44376.400337] RDX: dead000000000100 RSI: ffff88812cc97500 RDI: ffff8881242f71b0\n[44376.401001] RBP: ffff88811cbb0940 R08: 0000000000000400 R09: 0000000000000001\n[44376.401663] R10: 0000000000000001 R11: 0000000000000000 R12: ffff88812c944000\n[44376.402342] R13: ffff8881242f71a8 R14: ffff8881222b4000 R15: 0000000000000000\n[44376.402999] FS:  00007f0451104800(0000) GS:ffff88852cb80000(0000) knlGS:0000000000000000\n[44376.403787] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n[44376.404343] CR2: 0000000000489108 CR3: 0000000123a79003 CR4: 0000000000370ea0\n[44376.405004] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n[44376.405665] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400\n[44376.406339] Call Trace:\n[44376.406651]  \u003cTASK\u003e\n[44376.406939]  ? die_addr+0x33/0x90\n[44376.407311]  ? exc_general_protection+0x192/0x390\n[44376.407795]  ? asm_exc_general_protection+0x22/0x30\n[44376.408292]  ? mlx5e_tc_del_fdb_flow+0xb3/0x340 [mlx5_core]\n[44376.408876]  __mlx5e_tc_del_fdb_peer_flow+0xbc/0xe0 [mlx5_core]\n[44376.409482]  mlx5e_tc_del_flow+0x42/0x210 [mlx5_core]\n[44376.410055]  mlx5e_flow_put+0x25/0x50 [mlx5_core]\n[44376.410529]  mlx5e_delete_flower+0x24b/0x350 [mlx5_core]\n[44376.411043]  tc_setup_cb_reoffload+0x22/0x80\n[44376.411462]  fl_reoffload+0x261/0x2f0 [cls_flower]\n[44376.411907]  ? mlx5e_rep_indr_setup_ft_cb+0x160/0x160 [mlx5_core]\n[44376.412481]  ? mlx5e_rep_indr_setup_ft_cb+0x160/0x160 [mlx5_core]\n[44376.413044]  tcf_block_playback_offloads+0x76/0x170\n[44376.413497]  tcf_block_unbind+0x7b/0xd0\n[44376.413881]  tcf_block_setup+0x17d/0x1c0\n[44376.414269]  tcf_block_offload_cmd.isra.0+0xf1/0x130\n[44376.414725]  tcf_block_offload_unbind+0x43/0x70\n[44376.415153]  __tcf_block_put+0x82/0x150\n[44376.415532]  ingress_destroy+0x22/0x30 [sch_ingress]\n[44376.415986]  qdisc_destroy+0x3b/0xd0\n[44376.416343]  qdisc_graft+0x4d0/0x620\n[44376.416706]  tc_get_qdisc+0x1c9/0x3b0\n[44376.417074]  rtnetlink_rcv_msg+0x29c/0x390\n[44376.419978]  ? rep_movs_alternative+0x3a/0xa0\n[44376.420399]  ? rtnl_calcit.isra.0+0x120/0x120\n[44376.420813]  netlink_rcv_skb+0x54/0x100\n[44376.421192]  netlink_unicast+0x1f6/0x2c0\n[44376.421573]  netlink_sendmsg+0x232/0x4a0\n[44376.421980]  sock_sendmsg+0x38/0x60\n[44376.422328]  ____sys_sendmsg+0x1d0/0x1e0\n[44376.422709]  ? copy_msghdr_from_user+0x6d/0xa0\n[44376.423127]  ___sys_sendmsg+0x80/0xc0\n[44376.423495]  ? ___sys_recvmsg+0x8b/0xc0\n[44376.423869]  __sys_sendmsg+0x51/0x90\n[44376.424226]  do_syscall_64+0x3d/0x90\n[44376.424587]  entry_SYSCALL_64_after_hwframe+0x46/0xb0\n[44376.425046] RIP: 0033:0x7f045134f887\n[44376.425403] Code: 0a 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b9 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 2e 00\n---truncated---","modified":"2026-04-02T09:44:32.331277Z","published":"2025-10-04T15:43:57.758Z","related":["SUSE-SU-2025:21040-1","SUSE-SU-2025:21052-1","SUSE-SU-2025:21056-1","SUSE-SU-2025:21064-1","SUSE-SU-2025:4057-1","SUSE-SU-2025:4128-1","SUSE-SU-2025:4132-1","SUSE-SU-2025:4140-1","SUSE-SU-2025:4141-1","SUSE-SU-2025:4149-1","SUSE-SU-2025:4301-1","SUSE-SU-2025:4320-1"],"database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/53xxx/CVE-2023-53581.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/30c281a77fb1b2d362030ea243dd663201d62a21"},{"type":"WEB","url":"https://git.kernel.org/stable/c/65e64640e97c0f223e77f9ea69b5a46186b93470"},{"type":"WEB","url":"https://git.kernel.org/stable/c/82ac62d76a000871004f534ad294e763e966d3b0"},{"type":"WEB","url":"https://git.kernel.org/stable/c/e962fd5933ebc767ce2a1cf7b7c85035b5a5d04c"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f7ceedd1d124217a67ed1a67bbd7a7b1288705e3"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/53xxx/CVE-2023-53581.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2023-53581"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"ad86755b18d5edf1956f6d25c844f27289216877"},{"fixed":"30c281a77fb1b2d362030ea243dd663201d62a21"},{"fixed":"82ac62d76a000871004f534ad294e763e966d3b0"},{"fixed":"e962fd5933ebc767ce2a1cf7b7c85035b5a5d04c"},{"fixed":"f7ceedd1d124217a67ed1a67bbd7a7b1288705e3"},{"fixed":"65e64640e97c0f223e77f9ea69b5a46186b93470"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-53581.json"}}],"schema_version":"1.7.5"}