On Mon, Jul 29, 2024 at 01:00:47PM GMT, Markus Elfring wrote: > … > > +++ b/drivers/gpu/drm/tiny/sharp-memory.c > > @@ -0,0 +1,684 @@ > … > > static int sharp_memory_update_display(struct sharp_memory_device *smd, > > + struct drm_framebuffer *fb, > > + struct drm_rect clip, > > + struct drm_format_conv_state *fmtcnv_state) > > +{ > … > > + mutex_lock(&smd->tx_mutex); > > + > > + /* Populate the transmit buffer with frame data */ > … > > + mutex_unlock(&smd->tx_mutex); > > + > > + return ret; > > +} > … > > Under which circumstances would you become interested to apply a statement > like “guard(mutex)(&smd->tx_mutex);”? > https://elixir.bootlin.com/linux/v6.10.2/source/include/linux/mutex.h#L196 > Ah, I didn't realize guarded mutexes were implemented. That's really good to know. I'd usually use them when it's possible to return before mutex_unlock is called to avoid goto cleanup logic. But it's probably best to just use them by default. Thanks for the review. Will clean up in v4. Best regards, Alex