From owner-freebsd-current Thu Sep 12 11: 0:29 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7918F37B400; Thu, 12 Sep 2002 11:00:21 -0700 (PDT) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.FreeBSD.org (Postfix) with ESMTP id E3E8E43E65; Thu, 12 Sep 2002 11:00:20 -0700 (PDT) (envelope-from mux@freebsd.org) Received: by elvis.mu.org (Postfix, from userid 1920) id AC9E3AE305; Thu, 12 Sep 2002 11:00:20 -0700 (PDT) Date: Thu, 12 Sep 2002 11:00:20 -0700 From: Maxime Henrion To: Maxim Sobolev Cc: current@FreeBSD.org Subject: Re: Panic during reboot in vflush() Message-ID: <20020912180020.GR86074@elvis.mu.org> References: <3D8045D3.35A3DECE@FreeBSD.org> <20020912080531.GQ86074@elvis.mu.org> <3D80CA46.1AF0CA4A@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3D80CA46.1AF0CA4A@FreeBSD.org> User-Agent: Mutt/1.3.27i Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Maxim Sobolev wrote: > Maxime Henrion wrote: > > > > Maxim Sobolev wrote: > > > Any ideas? > > > > Looks like some other processes was modifying the mountlist while > > vfs_unmountall() was running. Is this an SMP box ? > > No, it's UP. > > > It would be nice if > > you could check in gdb which other process was holding the mountlist_mtx > > mutex if any. > > Sure, if you will provide me with instruction on how to do in. You could know it by looking at the struct mtx, but after having read the stacktrace more carefully, I think my wild guesses were incorrect. I've seen a NULL mp pointer in the args and thought it was because of a corrupted mountlist but it seems it can't be that. devfs_unmount() gets called with a valid mp pointer and gdb tells us it then calls vflush() with a NULL mp, but devfs_unmount() just call vflush() with the same mp without modifying it. It looks like it's a bug in gdb and the bug is much more likely to be in vflush() like with the stacktraces from the bento cluster kris has been reporting. I expect this bug to be fixed with jeff's patch. I'm still unsure about how things are done in vfs_unmountall() but I doubt it could be the cause of your problems. Cheers, Maxime To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message