Re:[PATCH] misc: bh1770glc: queue proximity work on freezable workqueue

From: jiale yao

Date: Sat Oct 17 2026 - 03:24:48 EST


At 2026-10-16 18:10:33, "Jiale Yao" <yaojiale02@xxxxxxx> wrote:
>The proximity fallback work reads sensor registers after a delay. System
>suspend powers the sensor down without cancelling that work, while
>schedule_delayed_work() leaves it runnable on the non-freezable system
>workqueue.
>
>Queue the fallback work on system_freezable_wq so it cannot access the
>powered-down sensor or its suspended I2C adapter.
>

Fixes: 190420ab34ab ("drivers/misc: driver for bh1770glc / sfh7770 ALS and proximity sensor")

>Signed-off-by: Jiale Yao <yaojiale02@xxxxxxx>
>---
> drivers/misc/bh1770glc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
>diff --git a/drivers/misc/bh1770glc.c b/drivers/misc/bh1770glc.c
>index 98fc5970b2bb..3411947d9283 100644
>--- a/drivers/misc/bh1770glc.c
>+++ b/drivers/misc/bh1770glc.c
>@@ -620,8 +620,8 @@ static irqreturn_t bh1770_irq(int irq, void *data)
> * next expected interrupt time.
> */
> cancel_delayed_work_sync(&chip->prox_work);
>- schedule_delayed_work(&chip->prox_work,
>- msecs_to_jiffies(rate + 50));
>+ queue_delayed_work(system_freezable_wq, &chip->prox_work,
>+ msecs_to_jiffies(rate + 50));
> }
> return IRQ_HANDLED;
> }
>--
>2.34.1