{"id":"CVE-2026-90107","revision":"e01366114b8f40ffa47f212dbf6ded2c","records":[{"revision":"e01366114b8f40ffa47f212dbf6ded2c","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-90107","aliases":[],"title":"net/smc: free pending qentry in smc_llc_flow_stop() before memset","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/smc: free pending qentry in smc_llc_flow_stop() before memset\n\nsmc_llc_flow_stop() resets a flow struct with a blind memset:\n\n\tspin_lock_bh(&lgr->llc_flow_lock);\n\tmemset(flow, 0, sizeof(*flow));\n\tflow->type = SMC_LLC_FLOW_NONE;\n\tspin_unlock_bh(&lgr->llc_flow_lock);\n\nIf flow->qentry is non-NULL at this point the pointer is overwritten without the\nallocation being freed, leaking one kmalloc object.\n\nA late-arriving duplicate CONFIRM_LINK or ADD_LINK_CONT message can set\nflow->qentry after the legitimate message has been consumed by the waiter via\nsmc_llc_flow_qentry_clr() (which NULLs the pointer but leaves flow->type\nnon-zero) but before the flow completes and smc_llc_flow_stop() runs.  In that\nwindow the duplicate is stashed into flow->qentry, and then lost when\nsmc_llc_flow_stop() zeros the struct.\n\nCall smc_llc_flow_qentry_del() inside the lock before the memset.\nsmc_llc_flow_qentry_del() already checks flow->qentry before freeing, so the\nnormal case where no entry is pending is a no-op.","state":0,"publishedAt":"2026-09-17T16:06:16.157+00:00","modifiedAt":"2026-10-19T08:58:05.815+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/smc/smc_llc.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"8e3deb150a5237b672c4579e69a6deb02027dbed\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"11bc373ee6630709f0c2da2e7860c23d503c9e9d\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"032aec7d03c9102616b98fea74f8f7145e7f867c\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"957dba2b8b5aebfe09caa6a6b22b958079082eab\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"f03aa5d36ae3c4068a1c3885146be99aa7fd9307\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"0879ea157acc1ac6752f6fcb755d1f91a2359238\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"5ff429dd6725fa6c1e17a4ed0be8ab675f67a98b\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"555da9af827d95134656fa459c8f3ece04dd867a\",\n                            \"lessThan\": \"5ee0ceddc7785c6dcf4a8107fef01f0414a354f4\",\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/smc/smc_llc.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"5.8\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"5.8\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.270\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.221\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.188\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.157\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.110\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.52\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2.6\",\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/8e3deb150a5237b672c4579e69a6deb02027dbed","https://git.kernel.org/stable/c/11bc373ee6630709f0c2da2e7860c23d503c9e9d","https://git.kernel.org/stable/c/032aec7d03c9102616b98fea74f8f7145e7f867c","https://git.kernel.org/stable/c/957dba2b8b5aebfe09caa6a6b22b958079082eab","https://git.kernel.org/stable/c/f03aa5d36ae3c4068a1c3885146be99aa7fd9307","https://git.kernel.org/stable/c/0879ea157acc1ac6752f6fcb755d1f91a2359238","https://git.kernel.org/stable/c/5ff429dd6725fa6c1e17a4ed0be8ab675f67a98b","https://git.kernel.org/stable/c/5ee0ceddc7785c6dcf4a8107fef01f0414a354f4"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-90107","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-90107","identifiers":["CVE-2026-90107"]},"retained":false,"historicalAffected":[]}],"coverage":[]}