From 47e296faa2ee14ca41b13ec9c7986ea1833bc5b1 Mon Sep 17 00:00:00 2001 From: riastradh Date: Thu, 13 Aug 2020 17:26:43 +0000 Subject: Skip unlinked inodes. They no longer matter on disk so we don't need to write anything out for them. --- sys/ufs/lfs/lfs_segment.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'sys/ufs/lfs/lfs_segment.c') diff --git a/sys/ufs/lfs/lfs_segment.c b/sys/ufs/lfs/lfs_segment.c index ba5e2dc0d96..f689e5a4922 100644 --- a/sys/ufs/lfs/lfs_segment.c +++ b/sys/ufs/lfs/lfs_segment.c @@ -1,4 +1,4 @@ -/* $NetBSD: lfs_segment.c,v 1.286 2020/02/23 15:46:42 ad Exp $ */ +/* $NetBSD: lfs_segment.c,v 1.287 2020/08/13 17:26:43 riastradh Exp $ */ /*- * Copyright (c) 1999, 2000, 2001, 2002, 2003 The NetBSD Foundation, Inc. @@ -60,7 +60,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: lfs_segment.c,v 1.286 2020/02/23 15:46:42 ad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: lfs_segment.c,v 1.287 2020/08/13 17:26:43 riastradh Exp $"); #ifdef DEBUG # define vndebug(vp, str) do { \ @@ -487,7 +487,7 @@ lfs_writevnodes_selector(void *cl, struct vnode *vp) KASSERT(mutex_owned(vp->v_interlock)); ip = VTOI(vp); - if (ip == NULL || vp->v_type == VNON) + if (ip == NULL || vp->v_type == VNON || ip->i_nlink <= 0) return false; if ((op == VN_DIROP && !(vp->v_uflag & VU_DIROP)) || (op != VN_DIROP && op != VN_CLEAN && (vp->v_uflag & VU_DIROP))) { -- cgit