On 23/08/2024 10:32, Dmitry Torokhov wrote: > On Fri, Aug 23, 2024 at 08:06:17AM +0200, Krzysztof Kozlowski wrote: >> On 22/08/2024 20:07, Dmitry Torokhov wrote: >>> On Thu, Aug 22, 2024 at 05:48:33PM +0200, Krzysztof Kozlowski wrote: >>>> On Sun, Aug 18, 2024 at 09:58:03PM -0700, Dmitry Torokhov wrote: >>>>> Guard notation is more compact and ensures that the mutex will be >>>>> released when control leaves the function. >>>>> >>>>> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> >>>>> --- >>>>> drivers/input/keyboard/samsung-keypad.c | 8 ++------ >>>>> 1 file changed, 2 insertions(+), 6 deletions(-) >>>>> >>>> >>>> You need to include cleanup.h (unless some other patch already did it >>>> and I missed it?) >>> >>> Guard for mutexes defined in mutex.h which is pulled in indirectly, and >> >> guard() is not in mutex.h and in general we are including headers for >> the things directly used in the unit. > > Oh, but it is: > > https://elixir.bootlin.com/linux/v6.10/source/include/linux/mutex.h#L196 > > DEFINE_GUARD(mutex, struct mutex *, mutex_lock(_T), mutex_unlock(_T)) That's DEFINE_GUARD, not guard(). Best regards, Krzysztof