Re: [PATCH v2] device property: Make modifications of fwnode "flags" thread safe

From: Danilo Krummrich

Date: Tue Mar 17 2026 - 12:28:27 EST


On 3/17/2026 5:11 PM, Rafael J. Wysocki wrote:
> On Tue, Mar 17, 2026 at 5:04 PM Douglas Anderson <dianders@xxxxxxxxxxxx> wrote:
>>
>> In various places in the kernel, we modify the fwnode "flags" member
>> by doing either:
>> fwnode->flags |= SOME_FLAG;
>> fwnode->flags &= ~SOME_FLAG;
>>
>> This type of modification is not thread-safe. If two threads are both
>> mucking with the flags at the same time then one can clobber the
>> other.
>>
>> While flags are often modified while under the "fwnode_link_lock",
>> this is not universally true.
>>
>> Create some accessor functions for setting, clearing, and testing the
>> FWNODE flags and move all users to these accessor functions. New
>> accessor functions use set_bit() and clear_bit(), which are
>> thread-safe.
>>
>> Cc: stable@xxxxxxxxxxxxxxx
>> Fixes: c2c724c868c4 ("driver core: Add fw_devlink_parse_fwtree()")
>> Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
>> Acked-by: Mark Brown <broonie@xxxxxxxxxx>
>> Reviewed-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
>> Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
>
> Rafael J. Wysocki (Intel) <rafael@xxxxxxxxxx>

ACK or RB?