From nobody@FreeBSD.org  Fri Feb  9 11:35:11 2007
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
	by hub.freebsd.org (Postfix) with ESMTP id 704FD16A409
	for <freebsd-gnats-submit@FreeBSD.org>; Fri,  9 Feb 2007 11:35:11 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (groups.freebsd.org [69.147.83.33])
	by mx1.freebsd.org (Postfix) with ESMTP id 6180413C47E
	for <freebsd-gnats-submit@FreeBSD.org>; Fri,  9 Feb 2007 11:35:11 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.13.1/8.13.1) with ESMTP id l19BZBVp023061
	for <freebsd-gnats-submit@FreeBSD.org>; Fri, 9 Feb 2007 11:35:11 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.13.1/8.13.1/Submit) id l19BZBsl023060;
	Fri, 9 Feb 2007 11:35:11 GMT
	(envelope-from nobody)
Message-Id: <200702091135.l19BZBsl023060@www.freebsd.org>
Date: Fri, 9 Feb 2007 11:35:11 GMT
From: Dmitriy<twobrothers@yandex.ru>
To: freebsd-gnats-submit@FreeBSD.org
Subject: Double mount then umount and ls resuits in panic.
X-Send-Pr-Version: www-3.0

>Number:         108968
>Category:       kern
>Synopsis:       [panic] Double mount then umount and ls resuits in panic.
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Feb 09 11:40:16 GMT 2007
>Closed-Date:    Sat Apr 03 10:48:02 UTC 2010
>Last-Modified:  Sat Apr 03 10:48:02 UTC 2010
>Originator:     Dmitriy
>Release:        6.2-RELEASE
>Organization:
>Environment:
FreeBSD gate.smeu.ru 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Mon Jan 22 09:54:54 NOVT 2007   root@gate.smeu.ru:/usr/src/sys/i386/compile/GATE  i386
>Description:
If you mount CD with "mount /cdrom", then mount it again: "mount /cdrom" and then "umount /cdrom", "cd /cdrom" and "ls", you can see this:

Fatal trap 12: page fault while in kernel mode
fault virtual address	= 0x0
fault code		= supervisor read, page not present
instruction pointer	= 0x20:0xc047d670
stack pointer		= 0x28:0xcb3fbaac
frame pointer		= 0x28:0xcb3fbac0
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		= 819 (ls)
trap number		= 12
panic: page fault
Uptime: 5m12s
Cannot dump. No dump device defined/
Automatic reboot in 15 seconds - press a key on the console to abort

How can you double mount? May be you do something long time after first
mount, of may be amnesiac?

You can do this on GENERIC kernel after install without changing anything.
>How-To-Repeat:
Insert CD in CDROM, mount with

mount /cdrom
mount /cdrom
umount /cdrom
cd /cdrom
ls

>Fix:
Newer do double mount and check before mounting.
>Release-Note:
>Audit-Trail:

From: Alexander Best <alexbestms@math.uni-muenster.de>
To: <bug-followup@FreeBSD.org>
Cc:  
Subject: Re: kern/108968: [panic] Double mount then umount and ls resuits in
 panic.
Date: Wed, 14 Oct 2009 13:17:24 +0200 (CEST)

 this issue still exists under 9-CURRENT!!! (FreeBSD otaku 9.0-CURRENT FreeBSD
 9.0-CURRENT #0 r197914: Sat Oct 10 02:58:19 CEST 2009
 root@otaku:/usr/obj/usr/src/sys/ARUNDEL  i386)
 
 to reproduce it i booted into single user mode and did:
 
 `mount -r /dev/label/rootfs /usr` (rootfs == /)
 `umount /usr`
 `cd /usr && ls`
 
 here's a backtrace:
 
 Fatal trap 12: page fault while in kernel mode
 cpuid = 0; apic id = 00
 fault virtual address   = 0xdeadc112
 fault code              = supervisor read, page not present
 instruction pointer     = 0x20:0xc05c4301
 stack pointer           = 0x28:0xe7e2f82c
 frame pointer           = 0x28:0xe7e2f854
 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         = 29 (ls)
 panic: from debugger
 cpuid = 0
 KDB: stack backtrace:
 Uptime: 1m44s
 Physical memory: 2034 MB
 Dumping 74 MB: 59 43 27 11
 
 #0  doadump () at /usr/src/sys/kern/kern_shutdown.c:245
 #1  0xc063dc47 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:416
 #2  0xc063e06c in panic (fmt=Could not find the frame base for "panic".
 ) at /usr/src/sys/kern/kern_shutdown.c:579
 #3  0xc046e537 in db_panic (addr=Could not find the frame base for "db_panic".
 ) at /usr/src/sys/ddb/db_command.c:478
 #4  0xc046e474 in db_command (last_cmdp=0xc093c5bc, cmd_table=0x0, dopager=1)
 at /usr/src/sys/ddb/db_command.c:445
 #5  0xc046e5a8 in db_command_loop () at /usr/src/sys/ddb/db_command.c:498
 #6  0xc0470db2 in db_trap (type=12, code=0) at /usr/src/sys/ddb/db_main.c:229
 #7  0xc067583e in kdb_trap (type=12, code=0, tf=0xe7e2f7ec) at
 /usr/src/sys/kern/subr_kdb.c:535
 #8  0xc084787f in trap_fatal (frame=0xe7e2f7ec, eva=3735929106) at
 /usr/src/sys/i386/i386/trap.c:929
 #9  0xc0847468 in trap_pfault (frame=0xe7e2f7ec, usermode=0, eva=3735929106)
 at /usr/src/sys/i386/i386/trap.c:851
 #10 0xc0846e2a in trap (frame=0xe7e2f7ec) at /usr/src/sys/i386/i386/trap.c:533
 #11 0xc0821d8b in calltrap () at /usr/src/sys/i386/i386/exception.s:165
 #12 0xc05c4301 in g_io_request (bp=0xc7e25688, cp=0xc7e2b780) at
 /usr/src/sys/geom/geom_io.c:425
 #13 0xc05cb165 in g_vfs_strategy (bo=0xc7b37a5c, bp=0xd94eaa54) at
 /usr/src/sys/geom/geom_vfs.c:130
 #14 0xc07c4516 in ffs_geom_strategy (bo=0xc7b37a5c, bp=0xd94eaa54) at
 /usr/src/sys/ufs/ffs/ffs_vfsops.c:1954
 #15 0xc07d731a in ufs_strategy (ap=0xe7e2f910) at
 /usr/src/sys/ufs/ufs/ufs_vnops.c:2040
 #16 0xc0858c78 in VOP_STRATEGY_APV (vop=0xc09249e0, a=0xe7e2f910) at
 vnode_if.c:2171
 #17 0xc06d706e in VOP_STRATEGY (vp=0xc7b376b8, bp=0xd94eaa54) at
 vnode_if.h:940
 #18 0xc06d6fff in bufstrategy (bo=0xc7b377ac, bp=0xd94eaa54) at
 /usr/src/sys/kern/vfs_bio.c:3926
 #19 0xc06cff97 in bstrategy (bp=0xd94eaa54) at buf.h:397
 #20 0xc06d00b5 in breadn (vp=0xc7b376b8, blkno=0, size=2048, rablkno=0x0,
 rabsize=0x0, cnt=0, cred=0x0, bpp=0xe7e2fa7c) at
 /usr/src/sys/kern/vfs_bio.c:813
 #21 0xc06cfd4c in bread (vp=0xc7b376b8, blkno=0, size=2048, cred=0x0,
 bpp=0xe7e2fa7c) at /usr/src/sys/kern/vfs_bio.c:748
 #22 0xc07c5449 in ffs_read (ap=0xe7e2fac4) at
 /usr/src/sys/ufs/ffs/ffs_vnops.c:526
 #23 0xc0856a34 in VOP_READ_APV (vop=0xc09244e0, a=0xe7e2fac4) at
 vnode_if.c:887
 #24 0xc07d70ea in VOP_READ (vp=0xc7b376b8, uio=0xe7e2fbf4, ioflag=0,
 cred=0xc7558480) at vnode_if.h:384
 #25 0xc07d6da1 in ufs_readdir (ap=0xe7e2fbb4) at
 /usr/src/sys/ufs/ufs/ufs_vnops.c:1903
 #26 0xc0858224 in VOP_READDIR_APV (vop=0xc09249e0, a=0xe7e2fbb4) at
 vnode_if.c:1737
 #27 0xc06fdfe6 in VOP_READDIR (vp=0xc7b376b8, uio=0xe7e2fbf4, cred=0xc7558480,
 eofflag=0xe7e2fc28, ncookies=0x0, cookies=0x0) at vnode_if.h:758
 #28 0xc06fde0b in kern_getdirentries (td=0xc7eff690, fd=5, buf=0x28218000
 <Address 0x28218000 out of bounds>, count=4096, basep=0xe7e2fc64) at
 /usr/src/sys/kern/vfs_syscalls.c:4103
 #29 0xc06fdbf6 in getdirentries (td=0xc7eff690, uap=0xe7e2fce8) at
 /usr/src/sys/kern/vfs_syscalls.c:4051
 #30 0xc0847d06 in syscall (frame=0xe7e2fd38) at
 /usr/src/sys/i386/i386/trap.c:1078
 #31 0xc0821df0 in Xint0x80_syscall () at
 /usr/src/sys/i386/i386/exception.s:261
 #32 0x00000033 in ?? ()
 Previous frame inner to this frame (corrupt stack?)
 
 cheers.
 alex

From: Alexander Best <alexbestms@math.uni-muenster.de>
To: <bug-followup@FreeBSD.org>
Cc:  
Subject: Re: kern/108968: [panic] Double mount then umount and ls resuits in
 panic.
Date: Wed, 14 Oct 2009 15:37:57 +0200 (CEST)

 this post by Andriy Gapon on freebsd-fs@ describes the problem in detail:
 http://lists.freebsd.org/pipermail/freebsd-fs/2009-February/005676.html
State-Changed-From-To: open->closed 
State-Changed-By: brucec 
State-Changed-When: Sat Apr 3 10:47:41 UTC 2010 
State-Changed-Why:  
Duplicate of kern/107285. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=108968 
>Unformatted:
