From owner-freebsd-current@FreeBSD.ORG Sun Aug 7 00:11:33 2011 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A29EC106564A for ; Sun, 7 Aug 2011 00:11:33 +0000 (UTC) (envelope-from bf1783@googlemail.com) Received: from mail-pz0-f45.google.com (mail-pz0-f45.google.com [209.85.210.45]) by mx1.freebsd.org (Postfix) with ESMTP id 7E57D8FC18 for ; Sun, 7 Aug 2011 00:11:33 +0000 (UTC) Received: by pzk33 with SMTP id 33so522174pzk.18 for ; Sat, 06 Aug 2011 17:11:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=mime-version:reply-to:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=S8mQc3kY3Nn3vSvIJrDdO1oHQZPK5swaXpVv/HL0wkg=; b=Pz/FVRxKsn4lK1az0BIlRsZJ05Uq9AjttBV00M51GgZEAvQIvtXbGpgfquzGND8YQ4 NOpYTkd8wBRYkM+wZNZsJoBTEIpQ6v2l6U6KwBXzHqZ+uUngvXRBVVCUu9Pt0kC23hjT DNMEEvOWmMBUw3kzp0gz7dF4Q3AIiE4TW/Oc0= MIME-Version: 1.0 Received: by 10.142.60.16 with SMTP id i16mr3850331wfa.343.1312675892989; Sat, 06 Aug 2011 17:11:32 -0700 (PDT) Received: by 10.68.43.133 with HTTP; Sat, 6 Aug 2011 17:11:32 -0700 (PDT) In-Reply-To: <20110806144325.GE17489@deviant.kiev.zoral.com.ua> References: <20110806144325.GE17489@deviant.kiev.zoral.com.ua> Date: Sat, 6 Aug 2011 20:11:32 -0400 Message-ID: From: "b. f." To: Kostik Belousov , freebsd-current@FreeBSD.org Content-Type: text/plain; charset=ISO-8859-1 Cc: Subject: Re: Recursive nullfs mounts and r224655 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: bf1783@gmail.com List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Aug 2011 00:11:33 -0000 On 8/6/11, Kostik Belousov wrote: > On Sat, Aug 06, 2011 at 04:44:25AM -0400, b. f. wrote: >> Recent changes to the kernel (sys/kern/vfs_mount.c, in r224655?) >> between r224550 and r224655 have broken my tinderbox setup. It had a >> tmpfs filesystem mounted at /T and a UFS filesystem mounted at /U, >> and, when setting up the tinderbox, performed: >> >> mkdir /U/u1 >> mkdir /U/u2 >> mkdir /T/t1 >> mount -t nullfs /T/t1 /U/u1 >> mkdir-p /U/u1/u3/u4 >> mount -t nullfs /U/u2 /U/u1/u3/u4 >> ... >> >> This worked at r224550 and before. It now fails at the second nullfs >> mount, with ENOENT("mount_nullfs: No such file or directory"). > r224615 and r224655 must be reverted. > > The reason for your trouble is that nullfs cannot cache any vnodes, > thus reclaiming anything that get reference count of 0. This interacts > badly with VOP_VNTOCNP() which has to operate on the vnodes with > zero refcount, since we cannot decrement refcount under the namecache > lock. > > Trying to update vptocnp(9) interface is too intrusive change for freeze > period. > Thank you for the analysis, it will make fixing this problem locally a bit easier, while you sort it out. Does 224614 have a bearing on this problem, as well as 224615? b.