[PATCH v2] virtio: Add missing documentation for structure fields

Simon Horman posted 1 patch 2 years, 9 months ago
There is a newer version of this series
include/linux/virtio.h | 2 ++
1 file changed, 2 insertions(+)
[PATCH v2] virtio: Add missing documentation for structure fields
Posted by Simon Horman 2 years, 9 months ago
Add missing documentation for the vqs_list_lock field of struct virtio_device,
and the validate field of struct virtio_driver.

./scripts/kernel-doc says:

 .../virtio.h:131: warning: Function parameter or member 'vqs_list_lock' not described in 'virtio_device'
 .../virtio.h:192: warning: Function parameter or member 'validate' not described in 'virtio_driver'
 2 warnings as Errors

No functional changes intended.

Signed-off-by: Simon Horman <horms@kernel.org>
---
Changes in v2:
- As suggested by Michael S. Tsirkin
  + @validate is not called on probe
  + @validate does validates config space
  + embarrassingly, validate was misspelt
- Link to v1: https://lore.kernel.org/r/20230510-virtio-kdoc-v1-1-d2b1824a9a2b@kernel.org
---
 include/linux/virtio.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/linux/virtio.h b/include/linux/virtio.h
index b93238db94e3..3abe8e9c8090 100644
--- a/include/linux/virtio.h
+++ b/include/linux/virtio.h
@@ -103,6 +103,7 @@ int virtqueue_resize(struct virtqueue *vq, u32 num,
  * @config_enabled: configuration change reporting enabled
  * @config_change_pending: configuration change reported while disabled
  * @config_lock: protects configuration change reporting
+ * @vqs_list_lock: protects @vqs.
  * @dev: underlying device.
  * @id: the device type identification (used to match it with a driver).
  * @config: the configuration ops for this device.
@@ -160,6 +161,7 @@ size_t virtio_max_dma_size(const struct virtio_device *vdev);
  * @feature_table_size: number of entries in the feature table array.
  * @feature_table_legacy: same as feature_table but when working in legacy mode.
  * @feature_table_size_legacy: number of entries in feature table legacy array.
+ * @validate: the function to call to validate features and config space
  * @probe: the function to call when a device is found.  Returns 0 or -errno.
  * @scan: optional function to call after successful probe; intended
  *    for virtio-scsi to invoke a scan.
Re: [PATCH v2] virtio: Add missing documentation for structure fields
Posted by Stefano Garzarella 2 years, 9 months ago
On Thu, May 11, 2023 at 04:46:22PM +0200, Simon Horman wrote:
>Add missing documentation for the vqs_list_lock field of struct virtio_device,
>and the validate field of struct virtio_driver.
>
>./scripts/kernel-doc says:
>
> .../virtio.h:131: warning: Function parameter or member 'vqs_list_lock' not described in 'virtio_device'
> .../virtio.h:192: warning: Function parameter or member 'validate' not described in 'virtio_driver'
> 2 warnings as Errors
>
>No functional changes intended.
>
>Signed-off-by: Simon Horman <horms@kernel.org>
>---
>Changes in v2:
>- As suggested by Michael S. Tsirkin
>  + @validate is not called on probe
>  + @validate does validates config space
>  + embarrassingly, validate was misspelt
>- Link to v1: https://lore.kernel.org/r/20230510-virtio-kdoc-v1-1-d2b1824a9a2b@kernel.org
>---
> include/linux/virtio.h | 2 ++
> 1 file changed, 2 insertions(+)

I left some minor comments, anyway this version LGTM:

Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>

>
>diff --git a/include/linux/virtio.h b/include/linux/virtio.h
>index b93238db94e3..3abe8e9c8090 100644
>--- a/include/linux/virtio.h
>+++ b/include/linux/virtio.h
>@@ -103,6 +103,7 @@ int virtqueue_resize(struct virtqueue *vq, u32 num,
>  * @config_enabled: configuration change reporting enabled
>  * @config_change_pending: configuration change reported while disabled
>  * @config_lock: protects configuration change reporting
>+ * @vqs_list_lock: protects @vqs.

Maybe we can now remove `/* Protects VQs list access */`

>  * @dev: underlying device.
>  * @id: the device type identification (used to match it with a driver).
>  * @config: the configuration ops for this device.
>@@ -160,6 +161,7 @@ size_t virtio_max_dma_size(const struct virtio_device *vdev);
>  * @feature_table_size: number of entries in the feature table array.
>  * @feature_table_legacy: same as feature_table but when working in legacy mode.
>  * @feature_table_size_legacy: number of entries in feature table legacy array.
>+ * @validate: the function to call to validate features and config space

Maybe we can add ". Returns 0 or -errno."

Thanks,
Stefano

>  * @probe: the function to call when a device is found.  Returns 0 or -errno.
>  * @scan: optional function to call after successful probe; intended
>  *    for virtio-scsi to invoke a scan.
>
Re: [PATCH v2] virtio: Add missing documentation for structure fields
Posted by Simon Horman 2 years, 8 months ago
On Tue, May 16, 2023 at 10:54:49AM +0200, Stefano Garzarella wrote:
> On Thu, May 11, 2023 at 04:46:22PM +0200, Simon Horman wrote:
> > Add missing documentation for the vqs_list_lock field of struct virtio_device,
> > and the validate field of struct virtio_driver.
> > 
> > ./scripts/kernel-doc says:
> > 
> > .../virtio.h:131: warning: Function parameter or member 'vqs_list_lock' not described in 'virtio_device'
> > .../virtio.h:192: warning: Function parameter or member 'validate' not described in 'virtio_driver'
> > 2 warnings as Errors
> > 
> > No functional changes intended.
> > 
> > Signed-off-by: Simon Horman <horms@kernel.org>
> > ---
> > Changes in v2:
> > - As suggested by Michael S. Tsirkin
> >  + @validate is not called on probe
> >  + @validate does validates config space
> >  + embarrassingly, validate was misspelt
> > - Link to v1: https://lore.kernel.org/r/20230510-virtio-kdoc-v1-1-d2b1824a9a2b@kernel.org
> > ---
> > include/linux/virtio.h | 2 ++
> > 1 file changed, 2 insertions(+)
> 
> I left some minor comments, anyway this version LGTM:
> 
> Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>

Thanks, and sorry for the delay.

> > diff --git a/include/linux/virtio.h b/include/linux/virtio.h
> > index b93238db94e3..3abe8e9c8090 100644
> > --- a/include/linux/virtio.h
> > +++ b/include/linux/virtio.h
> > @@ -103,6 +103,7 @@ int virtqueue_resize(struct virtqueue *vq, u32 num,
> >  * @config_enabled: configuration change reporting enabled
> >  * @config_change_pending: configuration change reported while disabled
> >  * @config_lock: protects configuration change reporting
> > + * @vqs_list_lock: protects @vqs.
> 
> Maybe we can now remove `/* Protects VQs list access */`

Yes, I think so.

> >  * @dev: underlying device.
> >  * @id: the device type identification (used to match it with a driver).
> >  * @config: the configuration ops for this device.
> > @@ -160,6 +161,7 @@ size_t virtio_max_dma_size(const struct virtio_device *vdev);
> >  * @feature_table_size: number of entries in the feature table array.
> >  * @feature_table_legacy: same as feature_table but when working in legacy mode.
> >  * @feature_table_size_legacy: number of entries in feature table legacy array.
> > + * @validate: the function to call to validate features and config space
> 
> Maybe we can add ". Returns 0 or -errno."

Sure, I'll plan to include this in v3.

 * @validate: the function to call to validate features and config space.
 *            Returns 0 or -errno.

...