From owner-freebsd-hackers Tue Nov 5 13:01:16 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id NAA24393 for hackers-outgoing; Tue, 5 Nov 1996 13:01:16 -0800 (PST) Received: from whistle.com (s205m131.whistle.com [207.76.205.131]) by freefall.freebsd.org (8.7.5/8.7.3) with ESMTP id NAA24388 for ; Tue, 5 Nov 1996 13:01:12 -0800 (PST) Received: (from smap@localhost) by whistle.com (8.7.5/8.6.12) id NAA05769; Tue, 5 Nov 1996 13:00:40 -0800 (PST) Received: from bubba.whistle.com(207.76.205.7) by whistle.com via smap (V1.3) id sma005767; Tue Nov 5 13:00:29 1996 Received: (from archie@localhost) by bubba.whistle.com (8.7.5/8.6.12) id NAA05158; Tue, 5 Nov 1996 13:00:29 -0800 (PST) From: Archie Cobbs Message-Id: <199611052100.NAA05158@bubba.whistle.com> Subject: mount panics & hangs To: freebsd-hackers@freebsd.org Date: Tue, 5 Nov 1996 13:00:29 -0800 (PST) Cc: julian@whistle.com (Julian Elischer) X-Mailer: ELM [version 2.4ME+ PL25 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Here is a way to crash a fairly -current system... I'd be interested to hear if this works for anyone else, and what the cause may be. The system eventually either goes into some sort of deadlock, or else panics: ervisor read, page not present instruction pointer = 0x8:0xf012ee00 stack pointer = 0x10:0xefbfff28 frame pointer = 0x10:0xefbfff30 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 585 (mount) interrupt mask = kernel: type 12 trap, code=0 Stopped at _vfs_busy+0x8: testb $0x40,0x1a(%ebx) I've seen deadlocks wrt. mounting and unmounting before, but the panic is something new. The scenario is: I have two idential partitions each containing a FreeBSD-2.2 image.. one is the root partition, the other gets mounted under "/mnt". The /etc/fstab contains: /dev/wd0a / ufs ro 1 1 /dev/wd0e /mnt ufs rw,noauto 1 2 The /mnt partition has a short file in its root directory called "foo". Now create these two shell scripts: #!/bin/sh while /usr/bin/true; do mount /mnt cat /mnt/foo > /dev/null umount /mnt done and #!/bin/sh while /usr/bin/true; do mount done Then start them both running in the background.. after a few seconds I get either a deadlock or a panic. -Archie ___________________________________________________________________________ Archie Cobbs * Whistle Communications, Inc. * http://www.whistle.com