CVE-2026-80785

Summary

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

fbdev: serialize mode sysfs access with lock_fb_info()

show_mode(), show_modes(), and store_mode() access fb_info->modelist and fb_info->mode without holding lock_fb_info(). store_modes() takes lock_fb_info() while replacing the modelist and freeing the old one.

A concurrent reader or writer can load a pointer to an old modelist entry before store_modes() frees it, then dereference freed memory or store a stale freed pointer in fb_info->mode.

Take lock_fb_info() in show_mode(), show_modes(), and store_mode() to serialize with store_modes(). In show_mode(), copy the mode to the stack and format after dropping the lock. In store_mode(), split activate() into a _locked variant to avoid double-locking, and hold the locks for the modelist walk, mode conversion, activation, and fb_info->mode assignment together.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 26135631ed8e487bc6aef70cc41934e258d09bbeaffected
LinuxLinux1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 < 061db6b7a910b8378f3b2df64f8c0a3ddc6e85f2affected
LinuxLinux0 < 7.1.11affected
LinuxLinux7.1.11 <= 7.1.*unaffected
LinuxLinux7.2 <= *unaffected

Weaknesses

References