From owner-freebsd-bugs@FreeBSD.ORG Tue Jan 27 09:42:29 2004 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E2CDD16A4CE for ; Tue, 27 Jan 2004 09:42:29 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 00D6E43D39 for ; Tue, 27 Jan 2004 09:41:48 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) i0RHeDFR099699 for ; Tue, 27 Jan 2004 09:40:13 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.10/8.12.10/Submit) id i0RHeDVY099698; Tue, 27 Jan 2004 09:40:13 -0800 (PST) (envelope-from gnats) Resent-Date: Tue, 27 Jan 2004 09:40:13 -0800 (PST) Resent-Message-Id: <200401271740.i0RHeDVY099698@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Bjoern Groenvall Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C5A0916A4CE for ; Tue, 27 Jan 2004 09:31:01 -0800 (PST) Received: from filur.sics.se (filur.sics.se [193.10.66.105]) by mx1.FreeBSD.org (Postfix) with ESMTP id 984AF43D5A for ; Tue, 27 Jan 2004 09:30:50 -0800 (PST) (envelope-from bg@filur.sics.se) Received: from filur.sics.se (localhost [127.0.0.1]) by filur.sics.se (8.12.10/8.12.10) with ESMTP id i0RHT3rc033904; Tue, 27 Jan 2004 18:29:03 +0100 (CET) (envelope-from bg@filur.sics.se) Received: (from bg@localhost) by filur.sics.se (8.12.10/8.12.10/Submit) id i0RHT34t033903; Tue, 27 Jan 2004 18:29:03 +0100 (CET) (envelope-from bg) Message-Id: <200401271729.i0RHT34t033903@filur.sics.se> Date: Tue, 27 Jan 2004 18:29:03 +0100 (CET) From: Bjoern Groenvall To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 cc: bg@sics.se Subject: kern/61994: panic in linprocfs X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Bjoern Groenvall List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Jan 2004 17:42:30 -0000 >Number: 61994 >Category: kern >Synopsis: panic in linprocfs >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Jan 27 09:40:12 PST 2004 >Closed-Date: >Last-Modified: >Originator: Bjoern Groenvall >Release: FreeBSD 5.2-RELEASE i386 >Organization: SICS >Environment: System: FreeBSD filur.sics.se 5.2-RELEASE FreeBSD 5.2-RELEASE #0: Thu Jan 22 22:47:09 CET 2004 root@filur.sics.se:/usr/src/sys/i386/compile/FILUR i386 >Description: When linprocfs is synthesizing the mtab file it does not obey the rules for proper locking. >How-To-Repeat: Mount a number of remote NFS file systems and then perform this command a number of times. # cat /compat/linux/proc/mtab >Fix: To synthesize the mtab file the following fields are used: f_mntfromname, f_mntonname, f_fstypename, f_flags All these fields are available without actually calling VFS_STATFS. If one still insists on calling VFS_STATFS one should follow the locking protocol. --- /usr/src/sys/compat/linprocfs/linprocfs.c.orig Mon Oct 20 06:10:20 2003 +++ /usr/src/sys/compat/linprocfs/linprocfs.c Thu Jan 22 21:32:53 2004 @@ -364,9 +364,12 @@ mtx_lock(&mountlist_mtx); error = 0; TAILQ_FOREACH(mp, &mountlist, mnt_list) { +#if 0 + /* Needs proper locking but is also superfluous. */ error = VFS_STATFS(mp, &mp->mnt_stat, td); if (error) break; +#endif /* determine device name */ mntfrom = mp->mnt_stat.f_mntfromname; >Release-Note: >Audit-Trail: >Unformatted: