{"api_version":"1","generated_at":"2026-06-02T10:07:06+00:00","cve":"CVE-2026-45977","urls":{"html":"https://cve.report/CVE-2026-45977","api":"https://cve.report/api/cve/CVE-2026-45977.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-45977","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-45977"},"summary":{"title":"fbnic: close fw_log race between users and teardown","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nfbnic: close fw_log race between users and teardown\n\nFixes a theoretical race on fw_log between the teardown path and fw_log\nwrite functions.\n\nfw_log is written inside fbnic_fw_log_write() and can be reached from\nthe mailbox handler fbnic_fw_msix_intr(), but fw_log is freed before\nIRQ/MBX teardown during cleanup, resulting in a potential data race of\ndereferencing a freed/null variable.\n\nPossible Interleaving Scenario:\n  CPU0: fbnic_fw_msix_intr() // Entry\n          fbnic_fw_log_write()\n            if (fbnic_fw_log_ready())   // true\n            ... preempt ...\n  CPU1: fbnic_remove() // Entry\n          fbnic_fw_log_free()\n            vfree(log->data_start);\n            log->data_start = NULL;\n  CPU0: continues, walks log->entries or writes to log->data_start\n\nThe initialization also has an incorrect order problem, as the fw_log\nis currently allocated after MBX setup during initialization.\nFix the problems by adjusting the synchronization order to put\ninitialization in place before the mailbox is enabled, and not cleared\nuntil after the mailbox has been disabled.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-05-27 14:17:14","updated_at":"2026-05-27 14:48:03"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/ee5492fd88cfc079c19fbeac78e9e53b7f6c04f3","name":"https://git.kernel.org/stable/c/ee5492fd88cfc079c19fbeac78e9e53b7f6c04f3","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/223cfef4812bdfa5ac5c1aa761cdba03cfe2c9cd","name":"https://git.kernel.org/stable/c/223cfef4812bdfa5ac5c1aa761cdba03cfe2c9cd","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/5f10ab3643c58a22fbaee92c4701b00fcb4a465d","name":"https://git.kernel.org/stable/c/5f10ab3643c58a22fbaee92c4701b00fcb4a465d","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-45977","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-45977","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected ecc53b1b46c892d2e3cf3cf4393b6d219dc4ae3f 223cfef4812bdfa5ac5c1aa761cdba03cfe2c9cd git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected ecc53b1b46c892d2e3cf3cf4393b6d219dc4ae3f 5f10ab3643c58a22fbaee92c4701b00fcb4a465d git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected ecc53b1b46c892d2e3cf3cf4393b6d219dc4ae3f ee5492fd88cfc079c19fbeac78e9e53b7f6c04f3 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6.17","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.17 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.14 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.19.4 6.19.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"45977","cve":"CVE-2026-45977","epss":"0.000170000","percentile":"0.042650000","score_date":"2026-06-01","updated_at":"2026-06-02 00:05:21"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/net/ethernet/meta/fbnic/fbnic_fw_log.c","drivers/net/ethernet/meta/fbnic/fbnic_pci.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"223cfef4812bdfa5ac5c1aa761cdba03cfe2c9cd","status":"affected","version":"ecc53b1b46c892d2e3cf3cf4393b6d219dc4ae3f","versionType":"git"},{"lessThan":"5f10ab3643c58a22fbaee92c4701b00fcb4a465d","status":"affected","version":"ecc53b1b46c892d2e3cf3cf4393b6d219dc4ae3f","versionType":"git"},{"lessThan":"ee5492fd88cfc079c19fbeac78e9e53b7f6c04f3","status":"affected","version":"ecc53b1b46c892d2e3cf3cf4393b6d219dc4ae3f","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/net/ethernet/meta/fbnic/fbnic_fw_log.c","drivers/net/ethernet/meta/fbnic/fbnic_pci.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"6.17"},{"lessThan":"6.17","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.14","versionType":"semver"},{"lessThanOrEqual":"6.19.*","status":"unaffected","version":"6.19.4","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.0","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.14","versionStartIncluding":"6.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.19.4","versionStartIncluding":"6.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0","versionStartIncluding":"6.17","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nfbnic: close fw_log race between users and teardown\n\nFixes a theoretical race on fw_log between the teardown path and fw_log\nwrite functions.\n\nfw_log is written inside fbnic_fw_log_write() and can be reached from\nthe mailbox handler fbnic_fw_msix_intr(), but fw_log is freed before\nIRQ/MBX teardown during cleanup, resulting in a potential data race of\ndereferencing a freed/null variable.\n\nPossible Interleaving Scenario:\n  CPU0: fbnic_fw_msix_intr() // Entry\n          fbnic_fw_log_write()\n            if (fbnic_fw_log_ready())   // true\n            ... preempt ...\n  CPU1: fbnic_remove() // Entry\n          fbnic_fw_log_free()\n            vfree(log->data_start);\n            log->data_start = NULL;\n  CPU0: continues, walks log->entries or writes to log->data_start\n\nThe initialization also has an incorrect order problem, as the fw_log\nis currently allocated after MBX setup during initialization.\nFix the problems by adjusting the synchronization order to put\ninitialization in place before the mailbox is enabled, and not cleared\nuntil after the mailbox has been disabled."}],"providerMetadata":{"dateUpdated":"2026-05-27T12:18:35.858Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/223cfef4812bdfa5ac5c1aa761cdba03cfe2c9cd"},{"url":"https://git.kernel.org/stable/c/5f10ab3643c58a22fbaee92c4701b00fcb4a465d"},{"url":"https://git.kernel.org/stable/c/ee5492fd88cfc079c19fbeac78e9e53b7f6c04f3"}],"title":"fbnic: close fw_log race between users and teardown","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-45977","datePublished":"2026-05-27T12:18:35.858Z","dateReserved":"2026-05-13T15:03:33.090Z","dateUpdated":"2026-05-27T12:18:35.858Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-05-27 14:17:14","lastModifiedDate":"2026-05-27 14:48:03","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"45977","Ordinal":"1","Title":"fbnic: close fw_log race between users and teardown","CVE":"CVE-2026-45977","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"45977","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nfbnic: close fw_log race between users and teardown\n\nFixes a theoretical race on fw_log between the teardown path and fw_log\nwrite functions.\n\nfw_log is written inside fbnic_fw_log_write() and can be reached from\nthe mailbox handler fbnic_fw_msix_intr(), but fw_log is freed before\nIRQ/MBX teardown during cleanup, resulting in a potential data race of\ndereferencing a freed/null variable.\n\nPossible Interleaving Scenario:\n  CPU0: fbnic_fw_msix_intr() // Entry\n          fbnic_fw_log_write()\n            if (fbnic_fw_log_ready())   // true\n            ... preempt ...\n  CPU1: fbnic_remove() // Entry\n          fbnic_fw_log_free()\n            vfree(log->data_start);\n            log->data_start = NULL;\n  CPU0: continues, walks log->entries or writes to log->data_start\n\nThe initialization also has an incorrect order problem, as the fw_log\nis currently allocated after MBX setup during initialization.\nFix the problems by adjusting the synchronization order to put\ninitialization in place before the mailbox is enabled, and not cleared\nuntil after the mailbox has been disabled.","Type":"Description","Title":"fbnic: close fw_log race between users and teardown"}]}}}