{"id":"CVE-2026-98622","revision":"c20ef87ccdda4064878bd21062997188","records":[{"revision":"c20ef87ccdda4064878bd21062997188","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-98622","aliases":[],"title":"net/sched: act_ct: don't WARN on benign flow_offload_alloc() failure","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/sched: act_ct: don't WARN on benign flow_offload_alloc() failure\n\nflow_offload_alloc() returns NULL when the conntrack entry is dying\n(e.g. raced with a conntrack flush) or when the GFP_ATOMIC allocation\nfails; both are expected under load and neither is a kernel bug. This\npath runs from softirq on every committed packet, so with\npanic_on_warn=1 an unprivileged user can panic the box just by racing\na conntrack flush against a `tc ... action ct commit` classifier.\n\nReproduced with a custom repro under QEMU: a small, fixed set of UDP\nflows through `tc filter ... action ct commit` on lo, raced against\nthreads flooding bare ctnetlink CT_DELETE (flush) requests. Hits\nWARNING: net/sched/act_ct.c:437 (tcf_ct_flow_table_add(), inlined\ninto tcf_ct_act() in this build) within ~15s on the unpatched kernel;\nsame setup is clean on the patched kernel. The fix itself is\nbehavior-preserving: both branches already did `goto err_alloc`\nbefore and after, only the WARN is removed.","state":0,"publishedAt":"2026-10-18T15:19:42.514+00:00","modifiedAt":"2026-10-19T09:22:50.359+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/sched/act_ct.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"e8fcf3f08834e939b797311742ee72b1e2a08096\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"af475f599270e59313552e6c6f3af8507da672b8\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"424ba52c0058deeb940d02cba52eb0aeb288db33\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"d512c484bd93a5f2794aa03c9faeb7bcb82dbd4a\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"d805560ad69cb266d669341ca01e26bffb0d2c67\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"00734f3684fcec42c319bedfe68a5d357c720b53\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"650787233c2fd6e515a7c5f371019a9fa080ccd2\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"64ff70b80fd403110b67dd9f7184a604fdb0da43\",\n                            \"lessThan\": \"47abe7a5c4eb53269aca3506446f851572a059a3\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/sched/act_ct.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"5.7\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"5.7\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.271\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.222\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.189\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.158\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.112\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.55\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2.9\",\n                            \"lessThanOrEqual\": \"7.2.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.3\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[],"references":["https://git.kernel.org/stable/c/e8fcf3f08834e939b797311742ee72b1e2a08096","https://git.kernel.org/stable/c/af475f599270e59313552e6c6f3af8507da672b8","https://git.kernel.org/stable/c/424ba52c0058deeb940d02cba52eb0aeb288db33","https://git.kernel.org/stable/c/d512c484bd93a5f2794aa03c9faeb7bcb82dbd4a","https://git.kernel.org/stable/c/d805560ad69cb266d669341ca01e26bffb0d2c67","https://git.kernel.org/stable/c/00734f3684fcec42c319bedfe68a5d357c720b53","https://git.kernel.org/stable/c/650787233c2fd6e515a7c5f371019a9fa080ccd2","https://git.kernel.org/stable/c/47abe7a5c4eb53269aca3506446f851572a059a3"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-98622","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-98622","identifiers":["CVE-2026-98622"]},"retained":false,"historicalAffected":[]}],"coverage":[]}