In the Linux kernel, the following vulnerability has been resolved: ipv6: mcast: fix RCU list diversion in ip6_mc_del1_src() When removing a source filter whose count reaches zero, ip6_mc_del1_src() unlinks psf from pmc->mca_sources. If the filter was previously active, the code moved psf directly into pmc->mca_tomb by updating psf->sf_next. Because pmc->mca_sources is traversed locklessly under RCU (e.g. by ipv6_chk_mcast_addr()), mutating psf->sf_next before a grace period elapses diverts concurrent readers to the tombstone list. Consequently, readers miss remaining active sources in pmc->mca_sources and improperly examine deleted tombstone entries. Fix this by allocating a new tombstone node for pmc->mca_tomb (as done in sf_setstate()) and retiring the original psf via kfree_rcu().
cve CVE-2026-98102 2 sources, 3 claims · Watch
NVD writes:
In the Linux kernel, the following vulnerability has been resolved: ipv6: mcast: fix RCU list diversion in ip6_mc_del1_src() When removing a source filter whose count reaches zero, ip6_mc_del1_src() unlinks psf from pmc->mca_sources. If the filter was previously active, the code moved psf directly into pmc->mca_tomb by updating psf->sf_next. Because pmc->mca_sources is traversed locklessly under RCU (e.g. by ipv6_chk_mcast_addr()), mutating psf->sf_next before a grace period elapses diverts concurrent readers to the tombstone list. Consequently, readers miss remaining active sources in pmc-… the claim
In the Linux kernel, the following vulnerability has been resolved: ipv6: mcast: fix RCU list diversion in ip6_mc_del1_src() When removing a source filter whose count reaches zero, ip6_mc_del1_src() unlinks psf from pmc->mca_sources. If the filter was previously active, the code moved psf directly into pmc->mca_tomb by updating psf->sf_next. Because pmc->mca_sources is traversed locklessly under RCU (e.g. by ipv6_chk_mcast_addr()), mutating psf->sf_next before a grace period elapses diverts concurrent readers to the tombstone list. Consequently, readers miss remaining active sources in pmc-… the claim
What it is to other things
In words only, so not counted until a person confirms one:
| affects | linux/linuxNVD says “Linux · Linux” |
| made_by | linuxNVD says “Linux” |
What each source says
| Property | Source | Said | Means here | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Product product | NVD | Linuxreceipt
What the source handed over{
"cve": {
"affected": [
{
"affectedData": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"net/ipv6/mcast.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "c3343cd7ec8706c221e52b782f386b9af14a928a",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "4352737297b262e8367675c19a7dc6a9f53c97af",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "5149c60c406595b56fda0c6e9aae7fd287f636aa",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "93b49239840b91313adbd77b8b52993eff2d08c1",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"status": "affected",
"version": "86c49119f0353f857cc08030ec9e4ebaab3d5a64",
"versionType": "git"
},
{
"lessThan": "5.11",
"status": "affected",
"version": "5.10.261",
"versionType": "semver"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"net/ipv6/mcast.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "5.13"
},
{
"lessThan": "5.13",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.158",
"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": "7.2.*",
"status": "unaffected",
"version": "7.2.7",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.3-rc2",
"versionType": "original_commit_for_fix"
}
]
}
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: mcast: fix RCU list diversion in ip6_mc_del1_src()\n\nWhen removing a source filter whose count reaches zero, ip6_mc_del1_src()\nunlinks psf from pmc->mca_sources. If the filter was previously active,\nthe code moved psf directly into pmc->mca_tomb by updating psf->sf_next.\n\nBecause pmc->mca_sources is traversed locklessly under RCU (e.g. by\nipv6_chk_mcast_addr()), mutating psf->sf_next before a grace period\nelapses diverts concurrent readers to the tombstone list. Consequently,\nreaders miss remaining active sources in pmc->mca_sources and improperly\nexamine deleted tombstone entries.\n\nFix this by allocating a new tombstone node for pmc->mca_tomb (as done\nin sf_setstate()) and retiring the original psf via kfree_rcu()."
}
],
"id": "CVE-2026-98102",
"lastModified": "2026-10-03T11:18:32.423",
"metrics": {},
"published": "2026-09-25T11:17:39.943",
"references": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/4352737297b262e8367675c19a7dc6a9f53c97af"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/5149c60c406595b56fda0c6e9aae7fd287f636aa"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/93b49239840b91313adbd77b8b52993eff2d08c1"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/c3343cd7ec8706c221e52b782f386b9af14a928a"
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"vulnStatus": "Undergoing Analysis"
}
} | — | ||||||
| Severity severity | GitHub advisories | unknownreceipt
This source has not kept a receipt for this claim yet. The next update that reads it will. | — | ||||||
| Status status | NVD | Undergoing Analysisreceipt
What the source handed over{
"cve": {
"affected": [
{
"affectedData": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"net/ipv6/mcast.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "c3343cd7ec8706c221e52b782f386b9af14a928a",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "4352737297b262e8367675c19a7dc6a9f53c97af",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "5149c60c406595b56fda0c6e9aae7fd287f636aa",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "93b49239840b91313adbd77b8b52993eff2d08c1",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"status": "affected",
"version": "86c49119f0353f857cc08030ec9e4ebaab3d5a64",
"versionType": "git"
},
{
"lessThan": "5.11",
"status": "affected",
"version": "5.10.261",
"versionType": "semver"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"net/ipv6/mcast.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "5.13"
},
{
"lessThan": "5.13",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.158",
"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": "7.2.*",
"status": "unaffected",
"version": "7.2.7",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.3-rc2",
"versionType": "original_commit_for_fix"
}
]
}
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: mcast: fix RCU list diversion in ip6_mc_del1_src()\n\nWhen removing a source filter whose count reaches zero, ip6_mc_del1_src()\nunlinks psf from pmc->mca_sources. If the filter was previously active,\nthe code moved psf directly into pmc->mca_tomb by updating psf->sf_next.\n\nBecause pmc->mca_sources is traversed locklessly under RCU (e.g. by\nipv6_chk_mcast_addr()), mutating psf->sf_next before a grace period\nelapses diverts concurrent readers to the tombstone list. Consequently,\nreaders miss remaining active sources in pmc->mca_sources and improperly\nexamine deleted tombstone entries.\n\nFix this by allocating a new tombstone node for pmc->mca_tomb (as done\nin sf_setstate()) and retiring the original psf via kfree_rcu()."
}
],
"id": "CVE-2026-98102",
"lastModified": "2026-10-03T11:18:32.423",
"metrics": {},
"published": "2026-09-25T11:17:39.943",
"references": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/4352737297b262e8367675c19a7dc6a9f53c97af"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/5149c60c406595b56fda0c6e9aae7fd287f636aa"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/93b49239840b91313adbd77b8b52993eff2d08c1"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/c3343cd7ec8706c221e52b782f386b9af14a928a"
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"vulnStatus": "Undergoing Analysis"
}
} | — | ||||||
| Vendor vendor | NVD | Linuxreceipt
What the source handed over{
"cve": {
"affected": [
{
"affectedData": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"net/ipv6/mcast.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "c3343cd7ec8706c221e52b782f386b9af14a928a",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "4352737297b262e8367675c19a7dc6a9f53c97af",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "5149c60c406595b56fda0c6e9aae7fd287f636aa",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"lessThan": "93b49239840b91313adbd77b8b52993eff2d08c1",
"status": "affected",
"version": "4b200e398953c237c86d32bf26d4cb2a96556a6f",
"versionType": "git"
},
{
"status": "affected",
"version": "86c49119f0353f857cc08030ec9e4ebaab3d5a64",
"versionType": "git"
},
{
"lessThan": "5.11",
"status": "affected",
"version": "5.10.261",
"versionType": "semver"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"net/ipv6/mcast.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "5.13"
},
{
"lessThan": "5.13",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.158",
"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": "7.2.*",
"status": "unaffected",
"version": "7.2.7",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.3-rc2",
"versionType": "original_commit_for_fix"
}
]
}
],
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: mcast: fix RCU list diversion in ip6_mc_del1_src()\n\nWhen removing a source filter whose count reaches zero, ip6_mc_del1_src()\nunlinks psf from pmc->mca_sources. If the filter was previously active,\nthe code moved psf directly into pmc->mca_tomb by updating psf->sf_next.\n\nBecause pmc->mca_sources is traversed locklessly under RCU (e.g. by\nipv6_chk_mcast_addr()), mutating psf->sf_next before a grace period\nelapses diverts concurrent readers to the tombstone list. Consequently,\nreaders miss remaining active sources in pmc->mca_sources and improperly\nexamine deleted tombstone entries.\n\nFix this by allocating a new tombstone node for pmc->mca_tomb (as done\nin sf_setstate()) and retiring the original psf via kfree_rcu()."
}
],
"id": "CVE-2026-98102",
"lastModified": "2026-10-03T11:18:32.423",
"metrics": {},
"published": "2026-09-25T11:17:39.943",
"references": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/4352737297b262e8367675c19a7dc6a9f53c97af"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/5149c60c406595b56fda0c6e9aae7fd287f636aa"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/8d4fe5c13f5056faa6deb09a90e24a89f9ebfad4"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/93b49239840b91313adbd77b8b52993eff2d08c1"
},
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"url": "https://git.kernel.org/stable/c/c3343cd7ec8706c221e52b782f386b9af14a928a"
}
],
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"vulnStatus": "Undergoing Analysis"
}
} | — |