{"id":"CVE-2026-80788","revision":"4c8057799b16410896eb31cf0f8598bb","records":[{"revision":"4c8057799b16410896eb31cf0f8598bb","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-80788","aliases":[],"title":"nvmet-tcp: Do not WARN on remotely-controlled oversized SGL allocations","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnvmet-tcp: Do not WARN on remotely-controlled oversized SGL allocations\n\nWhen fuzzing the nvme target code, I tripped a kernel warning in\nnvmet_tcp_map_data() because the length passed into the allocator is\ncontrolled by the remote initiator.\n\nA remote initiator that sends a command with an SGL claiming a huge\nnumber, can create a scatterlist and iovec allocation of over 1 million\nentries, which causes the backing kmalloc call to exceed MAX_PAGE_ORDER\nand then the page allocator will trip on a WARN_ON_ONCE_GFP() message:\n\n  WARNING: mm/page_alloc.c:5280 __alloc_frozen_pages_noprof\n  Workqueue: nvmet_tcp_wq nvmet_tcp_io_work\n  ...\n  sgl_alloc_order\n  nvmet_tcp_map_data\n  nvmet_tcp_try_recv_pdu\n\nAs it's never good to trip a kernel warning remotely due to many systems\nhaving panic-on-warn enabled, let's silence it by just add GFP_NOWARN to\nthe allocation flags.","state":0,"publishedAt":"2026-09-04T15:12:59.912+00:00","modifiedAt":"2026-10-19T08:43:40.496+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                        \"drivers/nvme/target/tcp.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"8d01f0d0e96485e39ad89b859ef85e1dc3020465\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"7b6a54d4e7b0da423c2b53ed293fd36b16c0b19e\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"e7077e6c45423dd2bb7de7b5fc4b018a8e6c4741\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"86cc450022473c4a29b43a09f3ec22a9ef566dac\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"c509f20be1cabda3087810bb2d658d66b3f31f35\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"9c95f7e66c62ee6c6abedcf1c04311f430ff5833\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"7fd6da0f28932442b51658bac4ff55565ca9b377\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"9b770e40bc00381e5ebf53653de5776773415be3\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"872d26a391da92ed8f0c0f5cb5fef428067b7f30\",\n                            \"lessThan\": \"737a3b535247226f6e1a7988fd9d6e63e7d6fc71\",\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                        \"drivers/nvme/target/tcp.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"5.0\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"5.0\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.267\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.218\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.185\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.154\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.106\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.47\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.1.11\",\n                            \"lessThanOrEqual\": \"7.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2.1\",\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/8d01f0d0e96485e39ad89b859ef85e1dc3020465","https://git.kernel.org/stable/c/7b6a54d4e7b0da423c2b53ed293fd36b16c0b19e","https://git.kernel.org/stable/c/e7077e6c45423dd2bb7de7b5fc4b018a8e6c4741","https://git.kernel.org/stable/c/86cc450022473c4a29b43a09f3ec22a9ef566dac","https://git.kernel.org/stable/c/c509f20be1cabda3087810bb2d658d66b3f31f35","https://git.kernel.org/stable/c/9c95f7e66c62ee6c6abedcf1c04311f430ff5833","https://git.kernel.org/stable/c/7fd6da0f28932442b51658bac4ff55565ca9b377","https://git.kernel.org/stable/c/9b770e40bc00381e5ebf53653de5776773415be3","https://git.kernel.org/stable/c/737a3b535247226f6e1a7988fd9d6e63e7d6fc71"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-80788","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-80788","identifiers":["CVE-2026-80788"]},"retained":false,"historicalAffected":[]}],"coverage":[]}