Re: [PATCH] counter: 104-quad-8: Fix race getting function mode and direction

From: William Breathitt Gray
Date: Sat Oct 22 2022 - 11:12:07 EST


On Thu, Oct 20, 2022 at 10:11:21AM -0400, William Breathitt Gray wrote:
> The quad8_action_read() function checks the Count function mode and
> Count direction without first acquiring a lock. This is a race condition
> because the function mode could change by the time the direction is
> checked.
>
> Because the quad8_function_read() already acquires a lock internally,
> the quad8_function_read() is refactored to spin out the no-lock code to
> a new quad8_function_get() function.
>
> To resolve the race condition in quad8_action_read(), a lock is acquired
> before calling quad8_function_get() and quad8_direction_read() in order
> to get both function mode and direction atomically.
>
> Fixes: f1d8a071d45b ("counter: 104-quad-8: Add Generic Counter interface support")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: William Breathitt Gray <william.gray@xxxxxxxxxx>

Queued for counter-fixes.

William Breathitt Gray

Attachment: signature.asc
Description: PGP signature