summaryrefslogtreecommitdiff
path: root/rust/zerocopy
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2026-06-29 16:08:00 -0700
committerGuenter Roeck <linux@roeck-us.net>2026-06-29 16:25:27 -0700
commit9ef7dacd44216bf5ea05c8aef49eba4d145f4047 (patch)
tree1cdedcc0df833dff563ca7d8c8c905ab61c0d429 /rust/zerocopy
parent72a69101032d2932ba5bde38494a325cc6b5d614 (diff)
hwmon: (pmbus) Fix passing events to regulator core
Sashiko reports: Commit 754bd2b4a084 ("hwmon: (pmbus/core) Protect regulator operations with mutex") introduced a worker to batch regulator events over time using atomic_or(). The delayed worker then passes the combined bitmask unmodified to regulator_notifier_call_chain(). The core regulator subsystem's regulator_handle_critical() function evaluates the event parameter using a strict switch statement. If multiple distinct faults occur before the worker runs (e.g., REGULATOR_EVENT_UNDER_VOLTAGE | REGULATOR_EVENT_OVER_CURRENT), the combined bitmask fails to match any case. This leaves the reason as NULL and completely bypasses the critical hw_protection_trigger(). Fix the problem by passing events bit by bit to the regulator event handler. Reported-by: Sashiko <sashiko-bot@kernel.org> Fixes: 754bd2b4a084 ("hwmon: (pmbus/core) Protect regulator operations with mutex") Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'rust/zerocopy')
0 files changed, 0 insertions, 0 deletions