{"id":"CVE-2026-98931","state":"PUBLISHED","title":"mtd: spinand: fix NULL pointer dereference with no ECC engine","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nmtd: spinand: fix NULL pointer dereference with no ECC engine\n\nWhen \"nand-no-ecc-engine\" is set in DT, nanddev_get_ecc_engine() takes\nthe NAND_ECC_ENGINE_TYPE_NONE path and returns success while leaving\nnand->ecc.engine NULL. The SPI-NAND code nevertheless dereferences it\nunconditionally to test for a pipelined engine, so probing such a\ndevice oopses immediately.\n\nRather than open-coding the test three times, add a\nnand_ecc_is_pipelined() helper to the NAND core that folds the NULL\ncheck into the integration comparison, and use it everywhere. Future\ncallers then cannot reintroduce the problem.","publishedAt":"2026-10-23T12:11:34.935Z","updatedAt":"2026-10-30T12:40:20.679Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"ab781c7840bb8a210156e25eb0c027d6097fb74d","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"77c449c9c946fc420008dc55cd30f53749c915e4","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"3c765fd5212c1bbc71568b1518a7ec963a7040b4","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"80e8b0ea73ba295e92dfb6cf1c41df9da64234c6","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"fc2f651f520394893b14b75281a01e502bfa73bb","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"b890e6163761ddb580cc74f43e15f8bbde15647e","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/mtd/nand/ecc.c","drivers/mtd/nand/spi/core.c","include/linux/mtd/nand.h"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.18","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.18","versionType":"semver"},{"version":"6.1.191","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.113","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.56","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.10","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/mtd/nand/ecc.c","drivers/mtd/nand/spi/core.c","include/linux/mtd/nand.h"]}],"references":["https://git.kernel.org/stable/c/ab781c7840bb8a210156e25eb0c027d6097fb74d","https://git.kernel.org/stable/c/77c449c9c946fc420008dc55cd30f53749c915e4","https://git.kernel.org/stable/c/3c765fd5212c1bbc71568b1518a7ec963a7040b4","https://git.kernel.org/stable/c/80e8b0ea73ba295e92dfb6cf1c41df9da64234c6","https://git.kernel.org/stable/c/fc2f651f520394893b14b75281a01e502bfa73bb","https://git.kernel.org/stable/c/b890e6163761ddb580cc74f43e15f8bbde15647e"],"weaknesses":[],"ingestedAt":"2026-10-30T13:00:06.648Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/98xxx/CVE-2026-98931.json","commit":"cb14bf1b43b0c9f05f7f40eae2246263fd430780","baselineCommit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-98931","state":"PUBLISHED","datePublished":"2026-10-23T12:11:34.935Z","dateUpdated":"2026-10-30T12:40:20.679Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-09-25T10:25:14.381Z"},"containers":{"cna":{"title":"mtd: spinand: fix NULL pointer dereference with no ECC engine","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nmtd: spinand: fix NULL pointer dereference with no ECC engine\n\nWhen \"nand-no-ecc-engine\" is set in DT, nanddev_get_ecc_engine() takes\nthe NAND_ECC_ENGINE_TYPE_NONE path and returns success while leaving\nnand->ecc.engine NULL. The SPI-NAND code nevertheless dereferences it\nunconditionally to test for a pipelined engine, so probing such a\ndevice oopses immediately.\n\nRather than open-coding the test three times, add a\nnand_ecc_is_pipelined() helper to the NAND core that folds the NULL\ncheck into the integration comparison, and use it everywhere. Future\ncallers then cannot reintroduce the problem."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"ab781c7840bb8a210156e25eb0c027d6097fb74d","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"77c449c9c946fc420008dc55cd30f53749c915e4","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"3c765fd5212c1bbc71568b1518a7ec963a7040b4","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"80e8b0ea73ba295e92dfb6cf1c41df9da64234c6","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"fc2f651f520394893b14b75281a01e502bfa73bb","versionType":"git"},{"version":"f9d7c7265bcff7d9a17425a8cddf702e8fe159c2","status":"affected","lessThan":"b890e6163761ddb580cc74f43e15f8bbde15647e","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/mtd/nand/ecc.c","drivers/mtd/nand/spi/core.c","include/linux/mtd/nand.h"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.18","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.18","versionType":"semver"},{"version":"6.1.191","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.113","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.56","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.10","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/mtd/nand/ecc.c","drivers/mtd/nand/spi/core.c","include/linux/mtd/nand.h"]}],"references":[{"url":"https://git.kernel.org/stable/c/ab781c7840bb8a210156e25eb0c027d6097fb74d"},{"url":"https://git.kernel.org/stable/c/77c449c9c946fc420008dc55cd30f53749c915e4"},{"url":"https://git.kernel.org/stable/c/3c765fd5212c1bbc71568b1518a7ec963a7040b4"},{"url":"https://git.kernel.org/stable/c/80e8b0ea73ba295e92dfb6cf1c41df9da64234c6"},{"url":"https://git.kernel.org/stable/c/fc2f651f520394893b14b75281a01e502bfa73bb"},{"url":"https://git.kernel.org/stable/c/b890e6163761ddb580cc74f43e15f8bbde15647e"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-30T12:40:20.679Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.18","versionEndExcluding":"6.1.191"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.18","versionEndExcluding":"6.6.160"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.18","versionEndExcluding":"6.12.113"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.18","versionEndExcluding":"6.18.56"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.18","versionEndExcluding":"7.2.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.18","versionEndExcluding":"7.3"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}