CVE-2026-23237 PUBLISHED

platform/x86: classmate-laptop: Add missing NULL pointer checks

Assigner: Linux
Reserved: 13.01.2026 Published: 04.03.2026 Updated: 04.03.2026

In the Linux kernel, the following vulnerability has been resolved:

platform/x86: classmate-laptop: Add missing NULL pointer checks

In a few places in the Classmate laptop driver, code using the accel object may run before that object's address is stored in the driver data of the input device using it.

For example, cmpc_accel_sensitivity_store_v4() is the "show" method of cmpc_accel_sensitivity_attr_v4 which is added in cmpc_accel_add_v4(), before calling dev_set_drvdata() for inputdev->dev. If the sysfs attribute is accessed prematurely, the dev_get_drvdata(&inputdev->dev) call in in cmpc_accel_sensitivity_store_v4() returns NULL which leads to a NULL pointer dereference going forward.

Moreover, sysfs attributes using the input device are added before initializing that device by cmpc_add_acpi_notify_device() and if one of them is accessed before running that function, a NULL pointer dereference will occur.

For example, cmpc_accel_sensitivity_attr_v4 is added before calling cmpc_add_acpi_notify_device() and if it is read prematurely, the dev_get_drvdata(&acpi->dev) call in cmpc_accel_sensitivity_show_v4() returns NULL which leads to a NULL pointer dereference going forward.

Fix this by adding NULL pointer checks in all of the relevant places.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to 993708fc18d0d0919db438361b4e8c1f980a8d1b (excl.)
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to af673209d43b46257540997aba042b90ef3258c0 (excl.)
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to eb214804f03c829decf10998e9b7dd26f4c8ab9e (excl.)
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to 9cf4b9b8ad09d6e05307abc4e951cabdff4be652 (excl.)
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to da6e06a5fdbabea3870d18c227734b5dea5b3be6 (excl.)
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to 97528b1622b8f129574d29a571c32a3c85eafa3c (excl.)
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to fe747d7112283f47169e9c16e751179a9b38611e (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • unaffected from 5.10.251 to 5.10.* (incl.)
  • unaffected from 5.15.201 to 5.15.* (incl.)
  • unaffected from 6.1.164 to 6.1.* (incl.)
  • unaffected from 6.6.127 to 6.6.* (incl.)
  • unaffected from 6.12.74 to 6.12.* (incl.)
  • unaffected from 6.18.13 to 6.18.* (incl.)
  • unaffected from 6.19 to * (incl.)

References