On Thu, Aug 17, 2023 at 11:25 AM Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > On Tue, Aug 15, 2023 at 09:09:55PM +0200, Bartosz Golaszewski wrote: > > On Tue, Aug 15, 2023 at 12:31 PM Andy Shevchenko > > <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote: > > > On Sat, Aug 12, 2023 at 08:36:35PM +0200, Bartosz Golaszewski wrote: > > ... > > > > > - mutex_lock(&chip->lock); > > > > - __assign_bit(offset, chip->value_map, value); > > > > - mutex_unlock(&chip->lock); > > > > + scoped_guard(mutex, &chip->lock) > > > > + __assign_bit(offset, chip->value_map, value); > > > > > > But this can also be guarded. > > > > > > guard(mutex)(&chip->lock); > > > > > > __assign_bit(offset, chip->value_map, value); > > > > Come on, this is total bikeshedding! I could produce ten arguments in > > favor of the scoped variant. > > > > Linus acked even the previous version and Peter says it looks right. I > > will queue it unless some *real* issues come up. > > I still think this will be, besides being shorter and nicer to read, > more consistent with other simple use of "guard(); return ..." cases. > Scoped guards have the advantage of making it very obvious where the critical section ends. It's really down to personal preference, there's nothing wrong with either option. Bart