[PATCH 0/6] backlight: Fix Critical and High issues reported by Sashiko

From: Lee Jones

Date: Wed Nov 04 2026 - 15:18:46 EST


These issues were reported by Sashiko.

This series resolves the open Critical and High severity bug reports
identified by the Sashiko AI analysis tool (https://sashiko.dev) across
the Backlight subsystem:

1. lm3630a_bl: Prevent a NULL pointer dereference in lm3630a_pwm_ctrl()
when PWM mode is enabled by requesting the PWM device before
registering the backlight device.
2. aat2870_bl: Prevent a NULL pointer dereference on platform_get_drvdata()
during devm_backlight_device_register() by populating driver data and
scaling the initial brightness beforehand.
3. qcom-wled: Cancel wled->ovp_work on probe failure via
devm_delayed_work_autocancel() so a scheduled OVP work item cannot
fire after devm_kzalloc() frees struct wled.
4. qcom-wled: Manage wled->lock via devm_mutex_init() and remove
wled_remove() so devres unwinds the backlight device, threaded IRQs,
delayed work, and mutex in strict reverse registration order without
calling disable_irq() on unconfigured negative or zero IRQ numbers.
5. qcom-wled: Guard against calling a NULL
wled->wled_auto_detection_required() callback on WLED3 hardware when
an OVP fault interrupt fires.
6. qcom-wled: Avoid an AB-BA deadlock between wled->lock and the
threaded OVP IRQ handler by using disable_irq_nosync() in
wled_module_enable() and verifying under wled->lock that the module
remains enabled before running wled_auto_string_detection().

Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Bjorn Andersson <andersson@xxxxxxxxxx>
Cc: Daniel Jeong <gshark.jeong@xxxxxxxxx>
Cc: Daniel Thompson <danielt@xxxxxxxxxx>
Cc: David Heidelberg <david@xxxxxxx>
Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
Cc: Helge Deller <deller@xxxxxx>
Cc: Jingoo Han <jingoohan1@xxxxxxxxx>
Cc: Jin Park <jinyoungp@xxxxxxxxxx>
Cc: Kiran Gunda <quic_kgunda@xxxxxxxxxxx>
Cc: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx>
Cc: LDD MLP <ldd-mlp@xxxxxxxxxxx>
Cc: linux-arm-msm@xxxxxxxxxxxxxxx
Cc: linux-fbdev@xxxxxxxxxxxxxxx
Cc: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>
Cc: Subbaraman Narayanamurthy <quic_subbaram@xxxxxxxxxxx>

Lee Jones (6):
backlight: lm3630a: Request PWM device before registering backlight
backlight: aat2870: Initialise driver data before registering
backlight
backlight: qcom-wled: Cancel delayed work on probe failure
backlight: qcom-wled: Manage teardown via devres and remove
wled_remove()
backlight: qcom-wled: Check for auto-detection callback in
wled_ovp_irq_handler()
backlight: qcom-wled: Avoid AB-BA deadlock in wled_module_enable()

drivers/video/backlight/aat2870_bl.c | 43 +++++++++++++------------
drivers/video/backlight/lm3630a_bl.c | 12 +++----
drivers/video/backlight/qcom-wled.c | 47 +++++++++++++++-------------
3 files changed, 52 insertions(+), 50 deletions(-)

--
2.56.0.385.gac671c819a-goog