Re: [PATCH v1 1/4] spidev: Do not use atomic bit operations when allocating minor

From: Andy Shevchenko
Date: Wed Mar 23 2022 - 13:37:10 EST


On Wed, Mar 23, 2022 at 04:39:01PM +0000, Mark Brown wrote:
> On Wed, Mar 23, 2022 at 04:02:12PM +0200, Andy Shevchenko wrote:
> > There is no need to use atomic bit operations when allocating a minor
> > number since it's done under a mutex. Moreover, one of the operations
> > that is in use is non-atomic anyway.

...

> > if (status == 0) {
> > - set_bit(minor, minors);
> > + __set_bit(minor, minors);
> > list_add(&spidev->device_entry, &device_list);
>
> There's no *need* but the __ looks suspicious... what's the upside
> here?

It's exactly what is written in the commit message

__*_bit() are non-atomic
*_bit() are atomic

Since they are wrapped by mutex, the atomic ones are not needed.

--
With Best Regards,
Andy Shevchenko