From: Sebastien Marie Subject: Re: shrink vop_print on install media To: Miod Vallat , tech@openbsd.org Date: Tue, 21 May 2024 16:51:22 +0200 Miod Vallat writes: > The vop_print method is seldom used and barely useful on installation > media. The following diff shunts most of it unless actual vop_print > support is required, via the DEBUG, DIAGNOSTIC and VFSLCKDEBUG kernel > options. ok semarie@ > Index: sys/isofs/cd9660/cd9660_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/isofs/cd9660/cd9660_vnops.c,v > retrieving revision 1.95 > diff -u -p -u -p -r1.95 cd9660_vnops.c > --- sys/isofs/cd9660/cd9660_vnops.c 8 Sep 2023 20:00:28 -0000 1.95 > +++ sys/isofs/cd9660/cd9660_vnops.c 17 May 2024 13:19:33 -0000 > @@ -738,7 +738,9 @@ cd9660_strategy(void *v) > int > cd9660_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > printf("tag VT_ISOFS, isofs vnode\n"); > +#endif > return (0); > } > > Index: sys/isofs/udf/udf_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/isofs/udf/udf_vnops.c,v > retrieving revision 1.72 > diff -u -p -u -p -r1.72 udf_vnops.c > --- sys/isofs/udf/udf_vnops.c 13 May 2024 11:17:40 -0000 1.72 > +++ sys/isofs/udf/udf_vnops.c 17 May 2024 13:19:33 -0000 > @@ -938,6 +938,7 @@ udf_islocked(void *v) > int > udf_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > struct vnode *vp = ap->a_vp; > struct unode *up = VTOU(vp); > @@ -948,6 +949,7 @@ udf_print(void *v) > printf("tag VT_UDF, hash id %u\n", up->u_ino); > #ifdef DIAGNOSTIC > printf("\n"); > +#endif > #endif > return (0); > } > Index: sys/kern/spec_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/kern/spec_vnops.c,v > retrieving revision 1.112 > diff -u -p -u -p -r1.112 spec_vnops.c > --- sys/kern/spec_vnops.c 3 Feb 2024 18:51:58 -0000 1.112 > +++ sys/kern/spec_vnops.c 17 May 2024 13:19:33 -0000 > @@ -608,10 +608,12 @@ spec_access(void *v) > int > spec_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > > printf("tag VT_NON, dev %d, %d\n", major(ap->a_vp->v_rdev), > minor(ap->a_vp->v_rdev)); > +#endif > return 0; > } > > Index: sys/kern/vfs_subr.c > =================================================================== > RCS file: /OpenBSD/src/sys/kern/vfs_subr.c,v > retrieving revision 1.319 > diff -u -p -u -p -r1.319 vfs_subr.c > --- sys/kern/vfs_subr.c 3 Feb 2024 18:51:58 -0000 1.319 > +++ sys/kern/vfs_subr.c 17 May 2024 13:19:33 -0000 > @@ -982,7 +982,7 @@ vflush_vnode(struct vnode *vp, void *arg > if (empty) > return (0); > > -#ifdef DEBUG_SYSCTL > +#if defined(DEBUG_SYSCTL) && (defined(DEBUG) || defined(DIAGNOSTIC)) > if (busyprt) > vprint("vflush: busy vnode", vp); > #endif > Index: sys/kern/vfs_sync.c > =================================================================== > RCS file: /OpenBSD/src/sys/kern/vfs_sync.c,v > retrieving revision 1.72 > diff -u -p -u -p -r1.72 vfs_sync.c > --- sys/kern/vfs_sync.c 13 May 2024 11:17:40 -0000 1.72 > +++ sys/kern/vfs_sync.c 17 May 2024 13:19:33 -0000 > @@ -363,7 +363,9 @@ sync_inactive(void *v) > int > sync_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > printf("syncer vnode\n"); > +#endif > > return (0); > } > Index: sys/kern/vfs_vops.c > =================================================================== > RCS file: /OpenBSD/src/sys/kern/vfs_vops.c,v > retrieving revision 1.36 > diff -u -p -u -p -r1.36 vfs_vops.c > --- sys/kern/vfs_vops.c 13 May 2024 11:17:40 -0000 1.36 > +++ sys/kern/vfs_vops.c 17 May 2024 13:19:33 -0000 > @@ -555,6 +555,7 @@ VOP_BMAP(struct vnode *vp, daddr_t bn, s > return ((vp->v_op->vop_bmap)(&a)); > } > > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > int > VOP_PRINT(struct vnode *vp) > { > @@ -566,6 +567,7 @@ VOP_PRINT(struct vnode *vp) > > return ((vp->v_op->vop_print)(&a)); > } > +#endif > > int > VOP_PATHCONF(struct vnode *vp, int name, register_t *retval) > Index: sys/miscfs/deadfs/dead_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/miscfs/deadfs/dead_vnops.c,v > retrieving revision 1.42 > diff -u -p -u -p -r1.42 dead_vnops.c > --- sys/miscfs/deadfs/dead_vnops.c 8 Mar 2023 04:43:08 -0000 1.42 > +++ sys/miscfs/deadfs/dead_vnops.c 17 May 2024 13:19:33 -0000 > @@ -233,7 +233,9 @@ dead_bmap(void *v) > int > dead_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > printf("tag VT_NON, dead vnode\n"); > +#endif > return 0; > } > > Index: sys/miscfs/fifofs/fifo_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/miscfs/fifofs/fifo_vnops.c,v > retrieving revision 1.105 > diff -u -p -u -p -r1.105 fifo_vnops.c > --- sys/miscfs/fifofs/fifo_vnops.c 3 May 2024 17:43:09 -0000 1.105 > +++ sys/miscfs/fifofs/fifo_vnops.c 17 May 2024 13:19:33 -0000 > @@ -389,14 +389,17 @@ fifo_reclaim(void *v) > int > fifo_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > > printf("tag VT_NON"); > fifo_printinfo(ap->a_vp); > printf("\n"); > +#endif > return 0; > } > > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > /* > * Print out internal contents of a fifo vnode. > */ > @@ -408,6 +411,7 @@ fifo_printinfo(struct vnode *vp) > printf(", fifo with %ld readers and %ld writers", > fip->fi_readers, fip->fi_writers); > } > +#endif > > /* > * Return POSIX pathconf information applicable to fifo's. > Index: sys/miscfs/fuse/fuse_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/miscfs/fuse/fuse_vnops.c,v > retrieving revision 1.69 > diff -u -p -u -p -r1.69 fuse_vnops.c > --- sys/miscfs/fuse/fuse_vnops.c 13 May 2024 11:17:40 -0000 1.69 > +++ sys/miscfs/fuse/fuse_vnops.c 17 May 2024 13:19:33 -0000 > @@ -959,6 +959,7 @@ fusefs_reclaim(void *v) > int > fusefs_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > struct vnode *vp = ap->a_vp; > struct fusefs_node *ip = VTOI(vp); > @@ -966,6 +967,7 @@ fusefs_print(void *v) > /* Complete the information given by vprint(). */ > printf("tag VT_FUSE, hash id %u ", ip->ufs_ino.i_number); > printf("\n"); > +#endif > return (0); > } > > Index: sys/msdosfs/msdosfs_vfsops.c > =================================================================== > RCS file: /OpenBSD/src/sys/msdosfs/msdosfs_vfsops.c,v > retrieving revision 1.97 > diff -u -p -u -p -r1.97 msdosfs_vfsops.c > --- sys/msdosfs/msdosfs_vfsops.c 17 Jul 2023 09:41:20 -0000 1.97 > +++ sys/msdosfs/msdosfs_vfsops.c 17 May 2024 13:19:33 -0000 > @@ -577,7 +577,7 @@ msdosfs_unmount(struct mount *mp, int mn > pmp = VFSTOMSDOSFS(mp); > pmp->pm_devvp->v_specmountpoint = NULL; > vp = pmp->pm_devvp; > -#ifdef MSDOSFS_DEBUG > +#if defined(MSDOSFS_DEBUG) && (defined(DEBUG) || defined(DIAGNOSTIC)) > vprint("msdosfs_umount(): just before calling VOP_CLOSE()\n", vp); > #endif > vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); > Index: sys/msdosfs/msdosfs_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/msdosfs/msdosfs_vnops.c,v > retrieving revision 1.141 > diff -u -p -u -p -r1.141 msdosfs_vnops.c > --- sys/msdosfs/msdosfs_vnops.c 13 May 2024 11:17:40 -0000 1.141 > +++ sys/msdosfs/msdosfs_vnops.c 17 May 2024 13:19:33 -0000 > @@ -1802,6 +1802,7 @@ msdosfs_strategy(void *v) > int > msdosfs_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > struct denode *dep = VTODE(ap->a_vp); > > @@ -1813,6 +1814,7 @@ msdosfs_print(void *v) > VOP_ISLOCKED(ap->a_vp) ? "(LOCKED)" : ""); > #ifdef DIAGNOSTIC > printf("\n"); > +#endif > #endif > > return (0); > Index: sys/nfs/nfs_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/nfs/nfs_vnops.c,v > retrieving revision 1.200 > diff -u -p -u -p -r1.200 nfs_vnops.c > --- sys/nfs/nfs_vnops.c 14 May 2024 06:26:05 -0000 1.200 > +++ sys/nfs/nfs_vnops.c 17 May 2024 13:19:33 -0000 > @@ -3296,6 +3296,7 @@ nfs_advlock(void *v) > int > nfs_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > struct vnode *vp = ap->a_vp; > struct nfsnode *np = VTONFS(vp); > @@ -3307,6 +3308,7 @@ nfs_print(void *v) > fifo_printinfo(vp); > #endif > printf("\n"); > +#endif > return (0); > } > > Index: sys/ntfs/ntfs_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/ntfs/ntfs_vnops.c,v > retrieving revision 1.49 > diff -u -p -u -p -r1.49 ntfs_vnops.c > --- sys/ntfs/ntfs_vnops.c 13 May 2024 11:17:40 -0000 1.49 > +++ sys/ntfs/ntfs_vnops.c 17 May 2024 13:19:33 -0000 > @@ -234,11 +234,13 @@ ntfs_reclaim(void *v) > int > ntfs_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > struct ntnode *ip = VTONT(ap->a_vp); > > printf("tag VT_NTFS, ino %u, flag %#x, usecount %d, nlink %ld\n", > ip->i_number, ip->i_flag, ip->i_usecount, ip->i_nlink); > +#endif > > return (0); > } > Index: sys/tmpfs/tmpfs_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/tmpfs/tmpfs_vnops.c,v > retrieving revision 1.55 > diff -u -p -u -p -r1.55 tmpfs_vnops.c > --- sys/tmpfs/tmpfs_vnops.c 13 May 2024 11:17:41 -0000 1.55 > +++ sys/tmpfs/tmpfs_vnops.c 17 May 2024 13:19:33 -0000 > @@ -1126,6 +1126,7 @@ tmpfs_advlock(void *v) > int > tmpfs_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args /* { > struct vnode *a_vp; > } */ *ap = v; > @@ -1141,6 +1142,7 @@ tmpfs_print(void *v) > fifo_printinfo(vp); > #endif > printf("\n"); > +#endif > return 0; > } > > Index: sys/ufs/mfs/mfs_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/ufs/mfs/mfs_vnops.c,v > retrieving revision 1.61 > diff -u -p -u -p -r1.61 mfs_vnops.c > --- sys/ufs/mfs/mfs_vnops.c 16 Apr 2024 10:04:41 -0000 1.61 > +++ sys/ufs/mfs/mfs_vnops.c 17 May 2024 13:19:33 -0000 > @@ -252,10 +252,12 @@ mfs_reclaim(void *v) > int > mfs_print(void *v) > { > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > struct mfsnode *mfsp = VTOMFS(ap->a_vp); > > printf("tag VT_MFS, tid %d, base %p, size %ld\n", mfsp->mfs_tid, > mfsp->mfs_baseoff, mfsp->mfs_size); > +#endif > return (0); > } > Index: sys/ufs/ufs/ufs_vnops.c > =================================================================== > RCS file: /OpenBSD/src/sys/ufs/ufs/ufs_vnops.c,v > retrieving revision 1.162 > diff -u -p -u -p -r1.162 ufs_vnops.c > --- sys/ufs/ufs/ufs_vnops.c 13 May 2024 11:17:41 -0000 1.162 > +++ sys/ufs/ufs/ufs_vnops.c 17 May 2024 13:19:33 -0000 > @@ -1516,7 +1516,7 @@ ufs_strategy(void *v) > int > ufs_print(void *v) > { > -#ifdef DIAGNOSTIC > +#if defined(DEBUG) || defined(DIAGNOSTIC) || defined(VFSLCKDEBUG) > struct vop_print_args *ap = v; > > struct vnode *vp = ap->a_vp; > @@ -1534,8 +1534,7 @@ ufs_print(void *v) > fifo_printinfo(vp); > #endif /* FIFO */ > printf("\n"); > - > -#endif /* DIAGNOSTIC */ > +#endif > > return (0); > } > -- Sebastien Marie