From owner-p4-projects@FreeBSD.ORG Thu Dec 14 15:15:55 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4751316A4C9; Thu, 14 Dec 2006 15:15:55 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0183916A417 for ; Thu, 14 Dec 2006 15:15:55 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.FreeBSD.org (Postfix) with ESMTP id 76F2543CD1 for ; Thu, 14 Dec 2006 15:13:33 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id kBEFF5O8021704 for ; Thu, 14 Dec 2006 15:15:05 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id kBEFF5Tu021701 for perforce@freebsd.org; Thu, 14 Dec 2006 15:15:05 GMT (envelope-from jhb@freebsd.org) Date: Thu, 14 Dec 2006 15:15:05 GMT Message-Id: <200612141515.kBEFF5Tu021701@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Cc: Subject: PERFORCE change 111696 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Dec 2006 15:15:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=111696 Change 111696 by jhb@jhb_mutex on 2006/12/14 15:14:23 Hold reference on the mountpoint across VFS_QUOTACTL(). Affected files ... .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#119 edit Differences ... ==== //depot/projects/smpng/sys/kern/vfs_syscalls.c#119 (text+ko) ==== @@ -202,12 +202,14 @@ NDFREE(&nd, NDF_ONLY_PNBUF); error = vn_start_write(nd.ni_vp, &vmp, V_WAIT | PCATCH); mp = nd.ni_vp->v_mount; + vfs_ref(mp); vrele(nd.ni_vp); if (error) goto out; error = VFS_QUOTACTL(mp, uap->cmd, uap->uid, uap->arg, td); vn_finished_write(vmp); out: + vfs_rel(mp); VFS_UNLOCK_GIANT(vfslocked); return (error); }