CyberAlerts is shutting down on June 30th, 2025. Thank you for your support!

CVE-2025-21685: platform/x86: lenovo-yoga-tab2-pro-1380-fastcharger: fix serdev race

Description

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

platform/x86: lenovo-yoga-tab2-pro-1380-fastcharger: fix serdev race

The yt2_1380_fc_serdev_probe() function calls devm_serdev_device_open()
before setting the client ops via serdev_device_set_client_ops(). This
ordering can trigger a NULL pointer dereference in the serdev controller's
receive_buf handler, as it assumes serdev->ops is valid when
SERPORT_ACTIVE is set.

This is similar to the issue fixed in commit 5e700b384ec1
("platform/chrome: cros_ec_uart: properly fix race condition") where
devm_serdev_device_open() was called before fully initializing the
device.

Fix the race by ensuring client ops are set before enabling the port via
devm_serdev_device_open().

Note, serdev_device_set_baudrate() and serdev_device_set_flow_control()
calls should be after the devm_serdev_device_open() call.

Classification

CVE ID: CVE-2025-21685

Affected Products

Vendor: Linux

Product: Linux

Exploit Prediction Scoring System (EPSS)

EPSS Score: 0.04% (probability of being exploited)

EPSS Percentile: 11.87% (scored less or equal to compared to others)

EPSS Date: 2025-03-10 (when was this score calculated)

References

https://git.kernel.org/stable/c/3f67e07873df3c6d9ce2582260b83732e1d3a40b
https://git.kernel.org/stable/c/59616a91e5e74833b2008b56c66879857c616006

Timeline