{"id":"CVE-2026-23237","state":"PUBLISHED","title":"platform/x86: classmate-laptop: Add missing NULL pointer checks","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nplatform/x86: classmate-laptop: Add missing NULL pointer checks\n\nIn a few places in the Classmate laptop driver, code using the accel\nobject may run before that object's address is stored in the driver\ndata of the input device using it.\n\nFor example, cmpc_accel_sensitivity_store_v4() is the \"show\" method\nof cmpc_accel_sensitivity_attr_v4 which is added in cmpc_accel_add_v4(),\nbefore calling dev_set_drvdata() for inputdev->dev.  If the sysfs\nattribute is accessed prematurely, the dev_get_drvdata(&inputdev->dev)\ncall in in cmpc_accel_sensitivity_store_v4() returns NULL which\nleads to a NULL pointer dereference going forward.\n\nMoreover, sysfs attributes using the input device are added before\ninitializing that device by cmpc_add_acpi_notify_device() and if one\nof them is accessed before running that function, a NULL pointer\ndereference will occur.\n\nFor example, cmpc_accel_sensitivity_attr_v4 is added before calling\ncmpc_add_acpi_notify_device() and if it is read prematurely, the\ndev_get_drvdata(&acpi->dev) call in cmpc_accel_sensitivity_show_v4()\nreturns NULL which leads to a NULL pointer dereference going forward.\n\nFix this by adding NULL pointer checks in all of the relevant places.","publishedAt":"2026-03-04T14:38:41.815Z","updatedAt":"2026-05-11T22:02:58.604Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"993708fc18d0d0919db438361b4e8c1f980a8d1b","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"af673209d43b46257540997aba042b90ef3258c0","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"eb214804f03c829decf10998e9b7dd26f4c8ab9e","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"9cf4b9b8ad09d6e05307abc4e951cabdff4be652","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"da6e06a5fdbabea3870d18c227734b5dea5b3be6","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"97528b1622b8f129574d29a571c32a3c85eafa3c","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"fe747d7112283f47169e9c16e751179a9b38611e","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/platform/x86/classmate-laptop.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.33","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.33","versionType":"semver"},{"version":"5.10.251","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.201","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.164","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.127","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.74","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.13","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"6.19","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/platform/x86/classmate-laptop.c"]}],"references":["https://git.kernel.org/stable/c/993708fc18d0d0919db438361b4e8c1f980a8d1b","https://git.kernel.org/stable/c/af673209d43b46257540997aba042b90ef3258c0","https://git.kernel.org/stable/c/eb214804f03c829decf10998e9b7dd26f4c8ab9e","https://git.kernel.org/stable/c/9cf4b9b8ad09d6e05307abc4e951cabdff4be652","https://git.kernel.org/stable/c/da6e06a5fdbabea3870d18c227734b5dea5b3be6","https://git.kernel.org/stable/c/97528b1622b8f129574d29a571c32a3c85eafa3c","https://git.kernel.org/stable/c/fe747d7112283f47169e9c16e751179a9b38611e"],"weaknesses":[],"ingestedAt":"2026-10-29T20:11:21.040Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/23xxx/CVE-2026-23237.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-23237","state":"PUBLISHED","datePublished":"2026-03-04T14:38:41.815Z","dateUpdated":"2026-05-11T22:02:58.604Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-01-13T15:37:45.988Z"},"containers":{"cna":{"title":"platform/x86: classmate-laptop: Add missing NULL pointer checks","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nplatform/x86: classmate-laptop: Add missing NULL pointer checks\n\nIn a few places in the Classmate laptop driver, code using the accel\nobject may run before that object's address is stored in the driver\ndata of the input device using it.\n\nFor example, cmpc_accel_sensitivity_store_v4() is the \"show\" method\nof cmpc_accel_sensitivity_attr_v4 which is added in cmpc_accel_add_v4(),\nbefore calling dev_set_drvdata() for inputdev->dev.  If the sysfs\nattribute is accessed prematurely, the dev_get_drvdata(&inputdev->dev)\ncall in in cmpc_accel_sensitivity_store_v4() returns NULL which\nleads to a NULL pointer dereference going forward.\n\nMoreover, sysfs attributes using the input device are added before\ninitializing that device by cmpc_add_acpi_notify_device() and if one\nof them is accessed before running that function, a NULL pointer\ndereference will occur.\n\nFor example, cmpc_accel_sensitivity_attr_v4 is added before calling\ncmpc_add_acpi_notify_device() and if it is read prematurely, the\ndev_get_drvdata(&acpi->dev) call in cmpc_accel_sensitivity_show_v4()\nreturns NULL which leads to a NULL pointer dereference going forward.\n\nFix this by adding NULL pointer checks in all of the relevant places."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"993708fc18d0d0919db438361b4e8c1f980a8d1b","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"af673209d43b46257540997aba042b90ef3258c0","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"eb214804f03c829decf10998e9b7dd26f4c8ab9e","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"9cf4b9b8ad09d6e05307abc4e951cabdff4be652","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"da6e06a5fdbabea3870d18c227734b5dea5b3be6","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"97528b1622b8f129574d29a571c32a3c85eafa3c","versionType":"git"},{"version":"529aa8cb0a59367d08883f818e8c47028e819d0d","status":"affected","lessThan":"fe747d7112283f47169e9c16e751179a9b38611e","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/platform/x86/classmate-laptop.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.33","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.33","versionType":"semver"},{"version":"5.10.251","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.201","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.164","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.127","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.74","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.13","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"6.19","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/platform/x86/classmate-laptop.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/993708fc18d0d0919db438361b4e8c1f980a8d1b"},{"url":"https://git.kernel.org/stable/c/af673209d43b46257540997aba042b90ef3258c0"},{"url":"https://git.kernel.org/stable/c/eb214804f03c829decf10998e9b7dd26f4c8ab9e"},{"url":"https://git.kernel.org/stable/c/9cf4b9b8ad09d6e05307abc4e951cabdff4be652"},{"url":"https://git.kernel.org/stable/c/da6e06a5fdbabea3870d18c227734b5dea5b3be6"},{"url":"https://git.kernel.org/stable/c/97528b1622b8f129574d29a571c32a3c85eafa3c"},{"url":"https://git.kernel.org/stable/c/fe747d7112283f47169e9c16e751179a9b38611e"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-11T22:02:58.604Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.33","versionEndExcluding":"5.10.251"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.33","versionEndExcluding":"5.15.201"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.33","versionEndExcluding":"6.1.164"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.33","versionEndExcluding":"6.6.127"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.33","versionEndExcluding":"6.12.74"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.33","versionEndExcluding":"6.18.13"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.33","versionEndExcluding":"6.19"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}