On Mon, Jun 24, 2024 at 07:47:26PM -0300, Jason Gunthorpe wrote: > diff --git a/include/linux/fwctl.h b/include/linux/fwctl.h > index ef4eaa87c945e4..1d9651de92fc19 100644 > --- a/include/linux/fwctl.h > +++ b/include/linux/fwctl.h > @@ -11,7 +11,20 @@ > struct fwctl_device; > struct fwctl_uctx; > > +/** > + * struct fwctl_ops - Driver provided operations > + * @uctx_size: The size of the fwctl_uctx struct to allocate. The first > + * bytes of this memory will be a fwctl_uctx. The driver can use the > + * remaining bytes as its private memory. > + * @open_uctx: Called when a file descriptor is opened before the uctx is ever > + * used. > + * @close_uctx: Called when the uctx is destroyed, usually when the FD is > + * closed. > + */ > struct fwctl_ops { > + size_t uctx_size; > + int (*open_uctx)(struct fwctl_uctx *uctx); > + void (*close_uctx)(struct fwctl_uctx *uctx); Just a small bikeshed, I much prefer the inline kerneldoc style for ops structs. It allows you to be appropriately verbose and document details like error handling (more important for later additions) or that e.g. they all must finish timely for otherwise fwctl_unregister hangs, without the comment becoming an eyesore. -Sima -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch