CVE-2026-74738

Summary

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

regmap: sdw-mbq: don't call an unset readable_reg callback

regmap_sdw_mbq_poll_busy() decides whether to poll the Function Busy bit by calling ctx->readable_reg(), which is a straight copy of config->readable_reg. That callback is optional: regmap_readable() treats a NULL ->readable_reg as "every register is readable", and drivers rely on that. es9356 and tac5xx2-sdw both build an MBQ regmap without one.

Since commit ca1b11b36d82 ("regmap: sdw-mbq: Allow defers on undeferrable controls") the poll runs on every -ENODATA, not only for Controls the driver marked deferrable, so any of those devices answering COMMAND_IGNORED takes the kernel through a NULL function pointer.

Treat a missing callback the way the rest of regmap does and poll.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux5bc493bf0c37c157bf2eb364e55a1c6f8bc43a69 < 6cf600b276a55a6481462830607a611f32e737c0affected
LinuxLinux5bc493bf0c37c157bf2eb364e55a1c6f8bc43a69 < 5bd8e897ecf558507142f4553e4526adfc1d6482affected
LinuxLinux5bc493bf0c37c157bf2eb364e55a1c6f8bc43a69 < 00268f9452d2a0d660aa9c1bb0ca07a994af6a4faffected
LinuxLinux6.14affected
LinuxLinux0 < 6.14unaffected
LinuxLinux6.18.46 <= 6.18.*unaffected
LinuxLinux7.1.10 <= 7.1.*unaffected
LinuxLinux7.2 <= *unaffected

Weaknesses

References