{"answers":{"affected":"","exploited":"There is no known exploitation of CVE-2026-97942 in the wild and no public exploit code.","fix":"Apply the vendor's patch.","what":"CVE-2026-97942 is a vulnerability in Linux, published on 25 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-97942 and fix it if it is affected.\n\nWhat it is: CVE-2026-97942 is a vulnerability in Linux, published on 25 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-97942 in the wild and no public exploit code.\n\nAffected product: Linux. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-97942/ (Markdown: https://insights.sbomify.com/CVE-2026-97942/index.md)","id":"CVE-2026-97942","markdown":"https://insights.sbomify.com/CVE-2026-97942/index.md","name":"CVE-2026-97942","record":{"aliases":["BELL-CVE-2026-97942","DEBIAN-CVE-2026-97942","GHSA-g4fw-gv65-xh5g","UBUNTU-CVE-2026-97942"],"analysis":{"component_type":"kernel","fix_type":"patch","impacts":["denial_of_service"],"network_reachable":"adjacent_or_local","non_default_config":true,"product_category":"Linux kernel","requires_auth":"high_privilege","summary":"A race condition in the Linux kernel x86 alternatives code can cause a kernel panic when text poking conflicts with page attribute changes.","user_interaction":"not_required","vuln_class":"race_condition"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"Linux","cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\nx86/alternatives: Exclude text poking against change_page_attr()\n\nFrom time to time, the following BUG can be observed\nin the x86 alternatives patching code [0]:\n\n  \u003e kernel BUG at arch/x86/kernel/alternative.c:2576!\n  \u003e Oops: invalid opcode: 0000 [#1] SMP NOPTI\n  \u003e CPU: 0 UID: 0 PID: 355 Comm: (udev-worker) Not tainted 7.1.3-1-default #1 PREEMPT(full) openSUSE Tumbleweed  8c1795b03ec64f997e57a8ad38b1161e3b98da64\n  \u003e Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS unknown 02/02/2022\n  \u003e RIP: 0010:__text_poke+0x2aa/0x450\n  \u003e Call Trace:\n  \u003e  \u003cTASK\u003e\n  \u003e  smp_text_poke_batch_finish+0x2a7/0x320\n  \u003e  __static_call_transform+0xb7/0x220\n  \u003e  arch_static_call_transform+0x5b/0xb0\n  \u003e  __static_call_init+0xe9/0x270\n  \u003e  static_call_module_notify+0x11f/0x150\n  \u003e  notifier_call_chain+0x61/0xe0\n  \u003e  blocking_notifier_call_chain_robust+0x63/0xc0\n  \u003e  load_module+0x1c92/0x20c0\n  \u003e  init_module_from_file+0xd8/0x140\n  \u003e  idempotent_init_module+0x100/0x2f0\n  \u003e  __x64_sys_finit_module+0x71/0xe0\n  \u003e  do_syscall_64+0xe1/0x610\n  \u003e  entry_SYSCALL_64_after_hwframe+0x76/0x7e\n\nwhich matches the following BUG_ON() in alternative.c:\n\n\t/*\n\t * If something went wrong, crash and burn since recovery paths are not\n\t * implemented.\n\t */\n\tBUG_ON(!pages[0] || (cross_page_boundary \u0026\u0026 !pages[1]));\n\nThis can happen if vmalloc_to_page() fails, for any reason. Such can happen\nif text poking races with CPA, which can possibly result in the collapsing\nof page tables (or breaking of PMD hugepages). It is not a problem for most\nusers of vmalloc_to_page() (they solely own the vmalloc'd range) but, when\nCONFIG_ARCH_HAS_EXECMEM_ROX=y, various modules own a single execmem vmalloc\nrange, and can call set_memory_*() in parallel on it. This can happen to\nrace against __text_poke and cause havoc in vmalloc_to_page().\n\nFix it by excluding against CPA using the init_mm mmap read lock.\n\n[ dhansen: Fix up SoB ordering. The actual code flow here was:\n\t   Pedro=\u003eLorenzo=\u003eMike=\u003eMe which is reflected in the SoB chain\n\t   now. I *believe* Mike simply picked up Lorenzo's update to\n\t   Pedro's post from the Link ]","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"x86/alternatives: Exclude text poking against change_page_attr()","id":"CVE-2026-97942","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"race_condition","year":"2026"},"n_packages":0,"n_references":3,"next":{"headline":"x86/mm/pat: Acquire init_mm write lock on collapse to avoid UAF","id":"CVE-2026-97943"},"packages":[],"prev":{"headline":"mm/slab: take n-\u003elist_lock in __slab_try_return_freelist() to avoid race","id":"CVE-2026-97941"},"products":["Linux"],"published":"2026-09-25","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":"PUBLISHED","updated":"2026-10-19","vendors":["Linux"]},"summary":"A race condition in the Linux kernel x86 alternatives code can cause a kernel panic when text poking conflicts with page attribute changes.","url":"https://insights.sbomify.com/CVE-2026-97942/"}