{"answers":{"affected":"","exploited":"There is no known exploitation of CVE-2026-99103 in the wild and no public exploit code.","fix":"Upgrade to a fixed version.","what":"CVE-2026-99103 is a vulnerability in Linux, published on 28 Oct 2026."},"fix_prompt":"Check this codebase for CVE-2026-99103 and fix it if it is affected.\n\nWhat it is: CVE-2026-99103 is a vulnerability in Linux, published on 28 Oct 2026. \nExploitation: There is no known exploitation of CVE-2026-99103 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-99103/ (Markdown: https://insights.sbomify.com/CVE-2026-99103/index.md)","id":"CVE-2026-99103","markdown":"https://insights.sbomify.com/CVE-2026-99103/index.md","name":"CVE-2026-99103","record":{"aliases":["BELL-CVE-2026-99103","DEBIAN-CVE-2026-99103","GHSA-qwjv-757x-9f99","UBUNTU-CVE-2026-99103"],"analysis":null,"analysis_generated_by":null,"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\nworkqueue: Fix unbound pool lifetime for pending pwqs\n\nKASAN reports a use-after-free of an unbound worker_pool in\nnode_activate_pending_pwq():\n\n  BUG: KASAN: slab-use-after-free in _raw_spin_trylock+0x6d/0x120\n  Read of size 4 at addr ffff8880089ce000 by task kworker/u22:0/318\n\n  CPU: 1 UID: 0 PID: 318 Comm: kworker/u22:0 Not tainted 7.2.0 #1 PREEMPT(lazy)\n  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014\n  Workqueue:  0x0 (flush-8:0)\n  Call Trace:\n   \u003cTASK\u003e\n   dump_stack_lvl+0x53/0x70\n   print_report+0xce/0x610\n   kasan_report+0xce/0x100\n   _raw_spin_trylock+0x6d/0x120\n   pwq_dec_nr_in_flight+0x4b4/0xcb0\n   process_one_work+0x921/0x11a0\n   worker_thread+0x4d0/0xd20\n   kthread+0x2de/0x3c0\n   ret_from_fork+0x3aa/0x620\n   ret_from_fork_asm+0x1a/0x30\n   \u003c/TASK\u003e\n\n  Allocated by task 311:\n   alloc_pwq+0x439/0xca0\n   apply_wqattrs_prepare+0x75e/0xd10\n   apply_workqueue_attrs_locked+0x44/0xa0\n   wq_nice_store+0x350/0x450\n\n  Freed by task 0:\n   kfree+0x127/0x3b0\n   rcu_core+0x523/0x1780\n   handle_softirqs+0x1b3/0x610\n\n  Last potentially related work creation:\n   put_unbound_pool+0x3f3/0x7d0\n   pwq_release_workfn+0x494/0x8e0\n   kthread_worker_fn+0x1ff/0x790\n\nCanceling the last inactive work skips pwq_dec_nr_active(), so an empty\npwq can remain on pending_pwqs when its refcnt reaches zero.\npwq_release_workfn() currently puts the pool before removing that pwq.\nIf this drops the last pool reference, the pool can be RCU-freed while\nthe pwq remains reachable, and node_activate_pending_pwq() may trylock\nthe freed pool-\u003elock.\n\nRemove the pwq from pending_pwqs before putting the pool.","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":"workqueue: Fix unbound pool lifetime for pending pwqs","id":"CVE-2026-99103","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":null,"year":"2026"},"n_packages":0,"n_references":5,"next":{"headline":"sched_ext: Fix the bypass dispatch claim for schedulers bypassed by an ancestor","id":"CVE-2026-99104"},"packages":[],"prev":{"headline":"ntfs: take invalidate_lock in ntfs_setattr_size()","id":"CVE-2026-99102"},"products":["Linux"],"published":"2026-10-28","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-28","vendors":["Linux"]},"summary":null,"url":"https://insights.sbomify.com/CVE-2026-99103/"}