{"api_version":"1","generated_at":"2026-10-02T15:13:36+00:00","cve":"CVE-2026-93829","urls":{"html":"https://cve.report/CVE-2026-93829","api":"https://cve.report/api/cve/CVE-2026-93829.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-93829","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-93829"},"summary":{"title":"smb: client: fix races in cifsd thread creation","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: fix races in cifsd thread creation\n\nThe cifsd demultiplex thread can run and access tcp_ses before the parent\nthread has finished populating tcp_ses, which the worker thread accesses\nlocklessly.\n\nAlso, the kthread_run macro may start the thread before returning the\nthread pointer. Because the pointer is part of the structure that the\nthread can access, if the kernel is preempted after the thread is spawned,\nbut before the thread pointer is populated and the thread attempts to exit,\nit will sleep, waiting for a SIGKILL signal.\n\nFix this by moving creation of the thread to after all of tcp_ses'es\nfields are populated, and spawning the thread last, using a split\nkthread_create/wake_up_process logic.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-09-24 17:17:16","updated_at":"2026-09-25 13:17:23"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/e8a5cf2ff5a13fefb228f2069e29dd7d8e37185d","name":"https://git.kernel.org/stable/c/e8a5cf2ff5a13fefb228f2069e29dd7d8e37185d","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/0eee1e6cddd1d9ce14da06e0238ca8d3362dec90","name":"https://git.kernel.org/stable/c/0eee1e6cddd1d9ce14da06e0238ca8d3362dec90","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/ee8f811cbac56ffb738b3a73671a9e75b0f56e99","name":"https://git.kernel.org/stable/c/ee8f811cbac56ffb738b3a73671a9e75b0f56e99","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-93829","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-93829","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aaf737adb6937339494d5a7111f0433cd9676db8 ee8f811cbac56ffb738b3a73671a9e75b0f56e99 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aaf737adb6937339494d5a7111f0433cd9676db8 0eee1e6cddd1d9ce14da06e0238ca8d3362dec90 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aaf737adb6937339494d5a7111f0433cd9676db8 e8a5cf2ff5a13fefb228f2069e29dd7d8e37185d git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 2.6.22","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 2.6.22 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.111 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.53 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.2 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"93829","cve":"CVE-2026-93829","epss":"0.001660000","percentile":"0.052190000","score_date":"2026-09-27","updated_at":"2026-09-28 00:02:24"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["fs/smb/client/connect.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"ee8f811cbac56ffb738b3a73671a9e75b0f56e99","status":"affected","version":"aaf737adb6937339494d5a7111f0433cd9676db8","versionType":"git"},{"lessThan":"0eee1e6cddd1d9ce14da06e0238ca8d3362dec90","status":"affected","version":"aaf737adb6937339494d5a7111f0433cd9676db8","versionType":"git"},{"lessThan":"e8a5cf2ff5a13fefb228f2069e29dd7d8e37185d","status":"affected","version":"aaf737adb6937339494d5a7111f0433cd9676db8","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["fs/smb/client/connect.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"2.6.22"},{"lessThan":"2.6.22","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.111","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.53","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.2","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.111","versionStartIncluding":"2.6.22","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.53","versionStartIncluding":"2.6.22","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2","versionStartIncluding":"2.6.22","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: fix races in cifsd thread creation\n\nThe cifsd demultiplex thread can run and access tcp_ses before the parent\nthread has finished populating tcp_ses, which the worker thread accesses\nlocklessly.\n\nAlso, the kthread_run macro may start the thread before returning the\nthread pointer. Because the pointer is part of the structure that the\nthread can access, if the kernel is preempted after the thread is spawned,\nbut before the thread pointer is populated and the thread attempts to exit,\nit will sleep, waiting for a SIGKILL signal.\n\nFix this by moving creation of the thread to after all of tcp_ses'es\nfields are populated, and spawning the thread last, using a split\nkthread_create/wake_up_process logic."}],"providerMetadata":{"dateUpdated":"2026-09-25T12:43:39.083Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/ee8f811cbac56ffb738b3a73671a9e75b0f56e99"},{"url":"https://git.kernel.org/stable/c/0eee1e6cddd1d9ce14da06e0238ca8d3362dec90"},{"url":"https://git.kernel.org/stable/c/e8a5cf2ff5a13fefb228f2069e29dd7d8e37185d"}],"title":"smb: client: fix races in cifsd thread creation","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-93829","datePublished":"2026-09-24T16:03:11.886Z","dateReserved":"2026-09-18T17:59:28.793Z","dateUpdated":"2026-09-25T12:43:39.083Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-09-24 17:17:16","lastModifiedDate":"2026-09-25 13:17:23","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"93829","Ordinal":"1","Title":"smb: client: fix races in cifsd thread creation","CVE":"CVE-2026-93829","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"93829","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: fix races in cifsd thread creation\n\nThe cifsd demultiplex thread can run and access tcp_ses before the parent\nthread has finished populating tcp_ses, which the worker thread accesses\nlocklessly.\n\nAlso, the kthread_run macro may start the thread before returning the\nthread pointer. Because the pointer is part of the structure that the\nthread can access, if the kernel is preempted after the thread is spawned,\nbut before the thread pointer is populated and the thread attempts to exit,\nit will sleep, waiting for a SIGKILL signal.\n\nFix this by moving creation of the thread to after all of tcp_ses'es\nfields are populated, and spawning the thread last, using a split\nkthread_create/wake_up_process logic.","Type":"Description","Title":"smb: client: fix races in cifsd thread creation"}]}}}