[PATCH] sysctl: repair some kernel-doc comments

Randy Dunlap posted 1 patch 6 days, 8 hours ago
include/linux/sysctl.h |    8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
[PATCH] sysctl: repair some kernel-doc comments
Posted by Randy Dunlap 6 days, 8 hours ago
Convert a non-kernel-comment to use "/*" instead.
Don't use kernel-doc for the nested @type enum values since they
aren't part of the struct.

Warning: ./include/linux/sysctl.h:62 Cannot find identifier on line:
 *
Warning: ./include/linux/sysctl.h:63 Cannot find identifier on line:
 * "dir" originates from read_iter (dir = 0) or write_iter (dir = 1)
Warning: ./include/linux/sysctl.h:64 This comment starts with '/**', but isn't a kernel-doc comment.
 * in the file_operations struct at proc/proc_sysctl.c. Its value means
Warning: ./include/linux/sysctl.h:274 Excess struct member
  'type.SYSCTL_TABLE_TYPE_DEFAULT' description in 'ctl_table_header'
Warning: ./include/linux/sysctl.h:274 Excess struct member
  'type.SYSCTL_TABLE_TYPE_PERMANENTLY_EMPTY' description in 'ctl_table_header'

Note: This still leaves 7 struct members in ctl_table_header that
are not described. E.g.:
Warning: include/linux/sysctl.h:274 struct member 'unregistering' not described in 'ctl_table_header'
Warning: include/linux/sysctl.h:274 struct member 'ctl_table_arg' not described in 'ctl_table_header'

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
---
Cc: Kees Cook <kees@kernel.org>
Cc: Joel Granados <joel.granados@kernel.org>
Cc: linux-fsdevel@vger.kernel.org

 include/linux/sysctl.h |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

--- linux-next-20260717.orig/include/linux/sysctl.h
+++ linux-next-20260717/include/linux/sysctl.h
@@ -59,7 +59,7 @@ extern const int sysctl_vals[];
 #define SYSCTL_LONG_ONE		((void *)&sysctl_long_vals[1])
 #define SYSCTL_LONG_MAX		((void *)&sysctl_long_vals[2])
 
-/**
+/*
  *
  * "dir" originates from read_iter (dir = 0) or write_iter (dir = 1)
  * in the file_operations struct at proc/proc_sysctl.c. Its value means
@@ -245,9 +245,9 @@ struct ctl_node {
  * @nreg: When nreg drops to 0 the ctl_table_header will be unregistered.
  * @rcu: Delays the freeing of the inode. Introduced with "unfuck proc_sysctl ->d_compare()"
  *
- * @type: Enumeration to differentiate between ctl target types
- * @type.SYSCTL_TABLE_TYPE_DEFAULT: ctl target with no special considerations
- * @type.SYSCTL_TABLE_TYPE_PERMANENTLY_EMPTY: Identifies a permanently empty dir
+ * @type: Enumeration to differentiate between ctl target types:
+ * type.SYSCTL_TABLE_TYPE_DEFAULT: ctl target with no special considerations
+ * type.SYSCTL_TABLE_TYPE_PERMANENTLY_EMPTY: Identifies a permanently empty dir
  *                                            target to serve as a mount point
  */
 struct ctl_table_header {
Re: [PATCH] sysctl: repair some kernel-doc comments
Posted by Joel Granados 4 days, 19 hours ago
pushed it to sysctl-next

Thx

Best
On Sat, Jul 18, 2026 at 12:03:56PM -0700, Randy Dunlap wrote:
> Convert a non-kernel-comment to use "/*" instead.
> Don't use kernel-doc for the nested @type enum values since they
> aren't part of the struct.
> 
> Warning: ./include/linux/sysctl.h:62 Cannot find identifier on line:
>  *
> Warning: ./include/linux/sysctl.h:63 Cannot find identifier on line:
>  * "dir" originates from read_iter (dir = 0) or write_iter (dir = 1)
> Warning: ./include/linux/sysctl.h:64 This comment starts with '/**', but isn't a kernel-doc comment.
>  * in the file_operations struct at proc/proc_sysctl.c. Its value means
> Warning: ./include/linux/sysctl.h:274 Excess struct member
>   'type.SYSCTL_TABLE_TYPE_DEFAULT' description in 'ctl_table_header'
> Warning: ./include/linux/sysctl.h:274 Excess struct member
>   'type.SYSCTL_TABLE_TYPE_PERMANENTLY_EMPTY' description in 'ctl_table_header'
> 
> Note: This still leaves 7 struct members in ctl_table_header that
> are not described. E.g.:
> Warning: include/linux/sysctl.h:274 struct member 'unregistering' not described in 'ctl_table_header'
> Warning: include/linux/sysctl.h:274 struct member 'ctl_table_arg' not described in 'ctl_table_header'
> 
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> ---
> Cc: Kees Cook <kees@kernel.org>
> Cc: Joel Granados <joel.granados@kernel.org>
> Cc: linux-fsdevel@vger.kernel.org
> 
>  include/linux/sysctl.h |    8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> --- linux-next-20260717.orig/include/linux/sysctl.h
> +++ linux-next-20260717/include/linux/sysctl.h
> @@ -59,7 +59,7 @@ extern const int sysctl_vals[];
>  #define SYSCTL_LONG_ONE		((void *)&sysctl_long_vals[1])
>  #define SYSCTL_LONG_MAX		((void *)&sysctl_long_vals[2])
>  
> -/**
> +/*
>   *
>   * "dir" originates from read_iter (dir = 0) or write_iter (dir = 1)
>   * in the file_operations struct at proc/proc_sysctl.c. Its value means
> @@ -245,9 +245,9 @@ struct ctl_node {
>   * @nreg: When nreg drops to 0 the ctl_table_header will be unregistered.
>   * @rcu: Delays the freeing of the inode. Introduced with "unfuck proc_sysctl ->d_compare()"
>   *
> - * @type: Enumeration to differentiate between ctl target types
> - * @type.SYSCTL_TABLE_TYPE_DEFAULT: ctl target with no special considerations
> - * @type.SYSCTL_TABLE_TYPE_PERMANENTLY_EMPTY: Identifies a permanently empty dir
> + * @type: Enumeration to differentiate between ctl target types:
> + * type.SYSCTL_TABLE_TYPE_DEFAULT: ctl target with no special considerations
> + * type.SYSCTL_TABLE_TYPE_PERMANENTLY_EMPTY: Identifies a permanently empty dir
>   *                                            target to serve as a mount point
>   */
>  struct ctl_table_header {

-- 

Joel Granados