diff --git a/sys/uvm/uvm_swap.c b/sys/uvm/uvm_swap.c index c5610d89419c..e66a3f82e6e1 100644 --- a/sys/uvm/uvm_swap.c +++ b/sys/uvm/uvm_swap.c @@ -1,4 +1,4 @@ -/* $NetBSD: uvm_swap.c,v 1.30 1999/11/15 18:49:15 fvdl Exp $ */ +/* $NetBSD: uvm_swap.c,v 1.31 2000/01/04 21:37:54 wrstuden Exp $ */ /* * Copyright (c) 1995, 1996, 1997 Matthew R. Green @@ -1049,11 +1049,8 @@ bad: /* * failure: close device if necessary and return error. */ - if (vp != rootvp) { - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); + if (vp != rootvp) (void)VOP_CLOSE(vp, FREAD|FWRITE, p->p_ucred, p); - VOP_UNLOCK(vp, 0); - } return (error); } @@ -1102,11 +1099,8 @@ swap_off(p, sdp) extent_destroy(sdp->swd_ex); free(name, M_VMSWAP); free((caddr_t)sdp->swd_ex, M_VMSWAP); - if (sdp->swp_vp != rootvp) { - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); + if (sdp->swp_vp != rootvp) (void) VOP_CLOSE(sdp->swd_vp, FREAD|FWRITE, p->p_ucred, p); - VOP_UNLOCK(vp, 0); - } if (sdp->swd_vp) vrele(sdp->swd_vp); free((caddr_t)sdp, M_VMSWAP);