{"api_version":"1","generated_at":"2026-06-24T12:16:59+00:00","cve":"CVE-2026-52941","urls":{"html":"https://cve.report/CVE-2026-52941","api":"https://cve.report/api/cve/CVE-2026-52941.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-52941","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-52941"},"summary":{"title":"net/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoint","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoint\n\nThe smc_msg_event tracepoint class, shared by smc_tx_sendmsg and\nsmc_rx_recvmsg, unconditionally dereferences smc->conn.lnk:\n\n\t__string(name, smc->conn.lnk->ibname)\n\nconn->lnk is only set for SMC-R; for SMC-D it is NULL. Other code on\nthese paths already handles this (e.g. !conn->lnk in\nSMC_STAT_RMB_TX_SIZE_SMALL()). With the tracepoint enabled, the first\nsendmsg()/recvmsg() on an SMC-D socket crashes:\n\n  Oops: general protection fault, probably for non-canonical address\n  KASAN: null-ptr-deref in range [...]\n  RIP: 0010:strlen+0x1e/0xa0\n  Call Trace:\n   trace_event_raw_event_smc_msg_event (net/smc/smc_tracepoint.h:44)\n   smc_rx_recvmsg (net/smc/smc_rx.c:515)\n   smc_recvmsg (net/smc/af_smc.c:2859)\n   __sys_recvfrom (net/socket.c:2315)\n   __x64_sys_recvfrom (net/socket.c:2326)\n   do_syscall_64\n\nThe faulting address 0x3e0 is offsetof(struct smc_link, ibname),\nconfirming the NULL ->lnk deref. Enabling the tracepoint requires\nroot, but the trigger itself is unprivileged: socket(AF_SMC, ...) has\nno capability check, and SMC-D negotiation needs no admin step on\ns390 or on x86 with the loopback ISM device loaded.\n\nLog an empty device name for SMC-D instead of dereferencing NULL.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-06-24 08:16:24","updated_at":"2026-06-24 08:16:24"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/720c76b930c52cd58f50eb6b10569d03dccc7959","name":"https://git.kernel.org/stable/c/720c76b930c52cd58f50eb6b10569d03dccc7959","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/68200112534bb2acd1d7117dc2d5c124868d866d","name":"https://git.kernel.org/stable/c/68200112534bb2acd1d7117dc2d5c124868d866d","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/d2ea0b8aef8746e147602eac87ca8538f4bc7e66","name":"https://git.kernel.org/stable/c/d2ea0b8aef8746e147602eac87ca8538f4bc7e66","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/b706d6d76a2a2793fe5ad0fbc2a75b6a460094ef","name":"https://git.kernel.org/stable/c/b706d6d76a2a2793fe5ad0fbc2a75b6a460094ef","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/561cf66fa9b6c86dfe4e687d2d1aeaaa6739917f","name":"https://git.kernel.org/stable/c/561cf66fa9b6c86dfe4e687d2d1aeaaa6739917f","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/7bf563badd37cb796df5477d2b78bb64148a1268","name":"https://git.kernel.org/stable/c/7bf563badd37cb796df5477d2b78bb64148a1268","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-52941","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-52941","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84 68200112534bb2acd1d7117dc2d5c124868d866d git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84 720c76b930c52cd58f50eb6b10569d03dccc7959 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84 b706d6d76a2a2793fe5ad0fbc2a75b6a460094ef git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84 d2ea0b8aef8746e147602eac87ca8538f4bc7e66 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84 561cf66fa9b6c86dfe4e687d2d1aeaaa6739917f git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84 7bf563badd37cb796df5477d2b78bb64148a1268 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.16","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.16 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.1.175 6.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.142 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.92 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.34 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0.11 7.0.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["net/smc/smc_tracepoint.h"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"68200112534bb2acd1d7117dc2d5c124868d866d","status":"affected","version":"aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84","versionType":"git"},{"lessThan":"720c76b930c52cd58f50eb6b10569d03dccc7959","status":"affected","version":"aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84","versionType":"git"},{"lessThan":"b706d6d76a2a2793fe5ad0fbc2a75b6a460094ef","status":"affected","version":"aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84","versionType":"git"},{"lessThan":"d2ea0b8aef8746e147602eac87ca8538f4bc7e66","status":"affected","version":"aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84","versionType":"git"},{"lessThan":"561cf66fa9b6c86dfe4e687d2d1aeaaa6739917f","status":"affected","version":"aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84","versionType":"git"},{"lessThan":"7bf563badd37cb796df5477d2b78bb64148a1268","status":"affected","version":"aff3083f10bff7a37eaa2b4e6bc5fb627ddd5f84","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["net/smc/smc_tracepoint.h"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"5.16"},{"lessThan":"5.16","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.1.*","status":"unaffected","version":"6.1.175","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.142","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.92","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.34","versionType":"semver"},{"lessThanOrEqual":"7.0.*","status":"unaffected","version":"7.0.11","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.1","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.1.175","versionStartIncluding":"5.16","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.142","versionStartIncluding":"5.16","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.92","versionStartIncluding":"5.16","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.34","versionStartIncluding":"5.16","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0.11","versionStartIncluding":"5.16","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.1","versionStartIncluding":"5.16","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoint\n\nThe smc_msg_event tracepoint class, shared by smc_tx_sendmsg and\nsmc_rx_recvmsg, unconditionally dereferences smc->conn.lnk:\n\n\t__string(name, smc->conn.lnk->ibname)\n\nconn->lnk is only set for SMC-R; for SMC-D it is NULL. Other code on\nthese paths already handles this (e.g. !conn->lnk in\nSMC_STAT_RMB_TX_SIZE_SMALL()). With the tracepoint enabled, the first\nsendmsg()/recvmsg() on an SMC-D socket crashes:\n\n  Oops: general protection fault, probably for non-canonical address\n  KASAN: null-ptr-deref in range [...]\n  RIP: 0010:strlen+0x1e/0xa0\n  Call Trace:\n   trace_event_raw_event_smc_msg_event (net/smc/smc_tracepoint.h:44)\n   smc_rx_recvmsg (net/smc/smc_rx.c:515)\n   smc_recvmsg (net/smc/af_smc.c:2859)\n   __sys_recvfrom (net/socket.c:2315)\n   __x64_sys_recvfrom (net/socket.c:2326)\n   do_syscall_64\n\nThe faulting address 0x3e0 is offsetof(struct smc_link, ibname),\nconfirming the NULL ->lnk deref. Enabling the tracepoint requires\nroot, but the trigger itself is unprivileged: socket(AF_SMC, ...) has\nno capability check, and SMC-D negotiation needs no admin step on\ns390 or on x86 with the loopback ISM device loaded.\n\nLog an empty device name for SMC-D instead of dereferencing NULL."}],"providerMetadata":{"dateUpdated":"2026-06-24T07:14:29.943Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/68200112534bb2acd1d7117dc2d5c124868d866d"},{"url":"https://git.kernel.org/stable/c/720c76b930c52cd58f50eb6b10569d03dccc7959"},{"url":"https://git.kernel.org/stable/c/b706d6d76a2a2793fe5ad0fbc2a75b6a460094ef"},{"url":"https://git.kernel.org/stable/c/d2ea0b8aef8746e147602eac87ca8538f4bc7e66"},{"url":"https://git.kernel.org/stable/c/561cf66fa9b6c86dfe4e687d2d1aeaaa6739917f"},{"url":"https://git.kernel.org/stable/c/7bf563badd37cb796df5477d2b78bb64148a1268"}],"title":"net/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoint","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-52941","datePublished":"2026-06-24T07:14:29.943Z","dateReserved":"2026-06-09T07:44:35.370Z","dateUpdated":"2026-06-24T07:14:29.943Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-06-24 08:16:24","lastModifiedDate":"2026-06-24 08:16:24","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"52941","Ordinal":"1","Title":"net/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoi","CVE":"CVE-2026-52941","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"52941","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoint\n\nThe smc_msg_event tracepoint class, shared by smc_tx_sendmsg and\nsmc_rx_recvmsg, unconditionally dereferences smc->conn.lnk:\n\n\t__string(name, smc->conn.lnk->ibname)\n\nconn->lnk is only set for SMC-R; for SMC-D it is NULL. Other code on\nthese paths already handles this (e.g. !conn->lnk in\nSMC_STAT_RMB_TX_SIZE_SMALL()). With the tracepoint enabled, the first\nsendmsg()/recvmsg() on an SMC-D socket crashes:\n\n  Oops: general protection fault, probably for non-canonical address\n  KASAN: null-ptr-deref in range [...]\n  RIP: 0010:strlen+0x1e/0xa0\n  Call Trace:\n   trace_event_raw_event_smc_msg_event (net/smc/smc_tracepoint.h:44)\n   smc_rx_recvmsg (net/smc/smc_rx.c:515)\n   smc_recvmsg (net/smc/af_smc.c:2859)\n   __sys_recvfrom (net/socket.c:2315)\n   __x64_sys_recvfrom (net/socket.c:2326)\n   do_syscall_64\n\nThe faulting address 0x3e0 is offsetof(struct smc_link, ibname),\nconfirming the NULL ->lnk deref. Enabling the tracepoint requires\nroot, but the trigger itself is unprivileged: socket(AF_SMC, ...) has\nno capability check, and SMC-D negotiation needs no admin step on\ns390 or on x86 with the loopback ISM device loaded.\n\nLog an empty device name for SMC-D instead of dereferencing NULL.","Type":"Description","Title":"net/smc: avoid NULL deref of conn->lnk in smc_msg_event tracepoi"}]}}}