All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Svyatoslav Ryhel" <clamor95@gmail.com>
Cc: robh@kernel.org, conor+dt@kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v3 10/11] video: backlight: lm3533_bl: Implement backlight_scale property
Date: Mon, 01 Jun 2026 15:37:55 +0000	[thread overview]
Message-ID: <20260601153756.463351F00899@smtp.kernel.org> (raw)
In-Reply-To: <20260601151831.76350-11-clamor95@gmail.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Unprotected concurrent modification of hardware register and `bd->props.scale` causes state desynchronization.
--

commit 8adaee77dd01ba44b6fdadefc561f4ab4fed6761
Author: Svyatoslav Ryhel <clamor95@gmail.com>

video: backlight: lm3533_bl: Implement backlight_scale property

This commit implements the backlight_scale property to describe the linear
and non-linear modes supported by the device.

> diff --git a/drivers/video/backlight/lm3533_bl.c b/drivers/video/backlight/lm3533_bl.c
> index f0d88b7bc229d..945625c54fc43 100644
> --- a/drivers/video/backlight/lm3533_bl.c
> +++ b/drivers/video/backlight/lm3533_bl.c
> @@ -161,6 +161,7 @@ static ssize_t store_linear(struct device *dev,
>  					const char *buf, size_t len)
>  {
>  	struct lm3533_bl *bl = dev_get_drvdata(dev);
> +	struct backlight_device *bd = bl->bd;
>  	int id = lm3533_bl_get_ctrlbank_id(bl);
>  	unsigned long linear;
>  	int ret;
> @@ -174,6 +175,9 @@ static ssize_t store_linear(struct device *dev,
>  	if (ret)
>  		return ret;
>  
> +	bd->props.scale = linear ? BACKLIGHT_SCALE_LINEAR :
> +				   BACKLIGHT_SCALE_NON_LINEAR;

[Severity: Medium]
Is it possible for the hardware state and the software state in
bd->props.scale to become desynchronized here?

Because sysfs writes can execute concurrently, could an interleaved
execution of store_linear() by two different threads result in a race
condition where the states diverge?

For example:
Thread 1 writes linear=1
Thread 1 updates hardware via regmap_update_bits()

Thread 2 writes linear=0
Thread 2 updates hardware via regmap_update_bits()
Thread 2 updates bd->props.scale = BACKLIGHT_SCALE_NON_LINEAR

Thread 1 updates bd->props.scale = BACKLIGHT_SCALE_LINEAR

Would wrapping this update sequence in a lock ensure the hardware and
software states remain consistent?

> +
>  	return len;
>  }
>  

[ ... ]

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260601151831.76350-1-clamor95@gmail.com?part=10

  reply	other threads:[~2026-06-01 15:37 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-01 15:18 [PATCH v3 00/11] mfd: lm3533: convert to OF bindings, improve support Svyatoslav Ryhel
2026-06-01 15:18 ` [PATCH v3 01/11] dt-bindings: leds: Document TI LM3533 LED controller Svyatoslav Ryhel
2026-06-02 13:49   ` Daniel Thompson
2026-06-01 15:18 ` [PATCH v3 02/11] mfd: lm3533: Remove driver specific regmap wrappers Svyatoslav Ryhel
2026-06-01 15:27   ` sashiko-bot
2026-06-02  8:05   ` Andy Shevchenko
2026-06-02 10:18     ` Svyatoslav Ryhel
2026-06-01 15:18 ` [PATCH v3 03/11] iio: light: lm3533-als: Remove redundant pdata helpers Svyatoslav Ryhel
2026-06-02  8:07   ` Andy Shevchenko
2026-06-02 13:42   ` Jonathan Cameron
2026-06-02 13:45     ` Svyatoslav Ryhel
2026-06-01 15:18 ` [PATCH v3 04/11] mfd: lm3533-core: " Svyatoslav Ryhel
2026-06-01 15:18 ` [PATCH v3 05/11] mfd: lm3533: Convert to use OF bindings Svyatoslav Ryhel
2026-06-01 15:35   ` sashiko-bot
2026-06-02  8:23   ` Andy Shevchenko
2026-06-02 10:31     ` Svyatoslav Ryhel
2026-06-02 11:05       ` Andy Shevchenko
2026-06-02 12:00         ` Svyatoslav Ryhel
2026-06-02 13:46   ` Jonathan Cameron
2026-06-02 13:50     ` Svyatoslav Ryhel
2026-06-02 14:20       ` Jonathan Cameron
2026-06-02 14:28         ` Svyatoslav Ryhel
2026-06-02 13:49   ` Daniel Thompson
2026-06-01 15:18 ` [PATCH v3 06/11] mfd: lm3533: Add support for VIN power supply Svyatoslav Ryhel
2026-06-01 15:18 ` [PATCH v3 07/11] mfd: lm3533: Set DMA mask Svyatoslav Ryhel
2026-06-01 15:28   ` sashiko-bot
2026-06-01 15:18 ` [PATCH v3 08/11] video: backlight: lm3533_bl: Improve linear sysfs logic Svyatoslav Ryhel
2026-06-02  8:09   ` Andy Shevchenko
2026-06-02 10:19     ` Svyatoslav Ryhel
2026-06-02 11:07       ` Andy Shevchenko
2026-06-02 11:59         ` Svyatoslav Ryhel
2026-06-02 13:55   ` Daniel Thompson
2026-06-01 15:18 ` [PATCH v3 09/11] video: backlight: lm3533_bl: Set initial mapping mode from DT Svyatoslav Ryhel
2026-06-02 14:05   ` Daniel Thompson
2026-06-01 15:18 ` [PATCH v3 10/11] video: backlight: lm3533_bl: Implement backlight_scale property Svyatoslav Ryhel
2026-06-01 15:37   ` sashiko-bot [this message]
2026-06-02 14:06   ` Daniel Thompson
2026-06-01 15:18 ` [PATCH v3 11/11] video: leds: backlight: lm3533: Support getting LED sources from DT Svyatoslav Ryhel
2026-06-01 15:37   ` sashiko-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260601153756.463351F00899@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=clamor95@gmail.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.