Description
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.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
529aa8cb0a59367d08883f818e8c47028e819d0d to < 993708fc18d0d0919db438361b4e8c1f980a8d1baffected529aa8cb0a59367d08883f818e8c47028e819d0d to < af673209d43b46257540997aba042b90ef3258c0affected529aa8cb0a59367d08883f818e8c47028e819d0d to < eb214804f03c829decf10998e9b7dd26f4c8ab9eaffected529aa8cb0a59367d08883f818e8c47028e819d0d to < 9cf4b9b8ad09d6e05307abc4e951cabdff4be652affected529aa8cb0a59367d08883f818e8c47028e819d0d to < da6e06a5fdbabea3870d18c227734b5dea5b3be6affected529aa8cb0a59367d08883f818e8c47028e819d0d to < 97528b1622b8f129574d29a571c32a3c85eafa3caffected529aa8cb0a59367d08883f818e8c47028e819d0d to < fe747d7112283f47169e9c16e751179a9b38611eaffected
Linux Linux
Default version status: affected
2.6.33affected0 to < 2.6.33unaffected5.10.251 to ≤ 5.10.*unaffected5.15.201 to ≤ 5.15.*unaffected6.1.164 to ≤ 6.1.*unaffected6.6.127 to ≤ 6.6.*unaffected6.12.74 to ≤ 6.12.*unaffected6.18.13 to ≤ 6.18.*unaffected6.19 to ≤ *unaffected
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 ↗