Re: vfs: do not export vnode_{hold,free}_list outside kern/vfs_subr.c

2022-03-27 Thread Todd C . Miller
On Sun, 27 Mar 2022 15:05:00 +0200, Sebastien Marie wrote:

> The following diff removes vnode_hold_list, vnode_free_list extern references
> , 
> and `struct freelst` definition from sys/vnode.h
>
> `struct freelst` definition (TAILQ_HEAD) is moved where used, inside vfs_subr
> .c.

OK millert@

 - todd



vfs: do not export vnode_{hold,free}_list outside kern/vfs_subr.c

2022-03-27 Thread Sebastien Marie
Hi,

The following diff removes vnode_hold_list, vnode_free_list extern references, 
and `struct freelst` definition from sys/vnode.h

`struct freelst` definition (TAILQ_HEAD) is moved where used, inside vfs_subr.c.

Kernel (GENERIC.MP i386) still build (and run). No usage found via grep on 
whole 
tree. Full release(8) build is pending.

No intented behaviour changes.

Comments or OK ?
-- 
Sebastien Marie

Index: kern/vfs_subr.c
===
RCS file: /cvs/src/sys/kern/vfs_subr.c,v
retrieving revision 1.314
diff -u -p -r1.314 vfs_subr.c
--- kern/vfs_subr.c 25 Jan 2022 04:04:40 -  1.314
+++ kern/vfs_subr.c 27 Mar 2022 12:56:20 -
@@ -98,6 +98,7 @@ int suid_clear = 1;   /* 1 => clear SUID 
LIST_NEXT(bp, b_vnbufs) = NOLIST;   \
 }
 
+TAILQ_HEAD(freelst, vnode);
 struct freelst vnode_hold_list;/* list of vnodes referencing buffers */
 struct freelst vnode_free_list;/* vnode free list */
 
Index: sys/vnode.h
===
RCS file: /cvs/src/sys/sys/vnode.h,v
retrieving revision 1.163
diff -u -p -r1.163 vnode.h
--- sys/vnode.h 12 Dec 2021 09:14:59 -  1.163
+++ sys/vnode.h 27 Mar 2022 12:56:20 -
@@ -243,10 +243,6 @@ extern int vttoif_tab[];
 #define REVOKEALL  0x0001  /* vop_revoke: revoke all aliases */
 
 
-TAILQ_HEAD(freelst, vnode);
-extern struct freelst vnode_hold_list; /* free vnodes referencing buffers */
-extern struct freelst vnode_free_list; /* vnode free list */
-
 #defineVATTR_NULL(vap) vattr_null(vap)
 #defineNULLVP  ((struct vnode *)NULL)
 #defineVN_KNOTE(vp, b) \