From owner-freebsd-current@FreeBSD.ORG Tue Apr 5 19:36:52 2005 Return-Path: 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 DC2F916A4CE for ; Tue, 5 Apr 2005 19:36:52 +0000 (GMT) Received: from postal1.es.net (postal1.es.net [198.128.3.205]) by mx1.FreeBSD.org (Postfix) with ESMTP id A20D143D45 for ; Tue, 5 Apr 2005 19:36:52 +0000 (GMT) (envelope-from oberman@es.net) Received: from ptavv.es.net ([198.128.4.29]) by postal1.es.net (Postal Node 1) with ESMTP (SSL) id IBA74465 for ; Tue, 05 Apr 2005 12:36:51 -0700 Received: from ptavv (localhost [127.0.0.1]) by ptavv.es.net (Tachyon Server) with ESMTP id 0434F5D08 for ; Tue, 5 Apr 2005 12:36:52 -0700 (PDT) To: current@freebsd.org Date: Tue, 05 Apr 2005 12:36:52 -0700 From: "Kevin Oberman" Message-Id: <20050405193652.0434F5D08@ptavv.es.net> Subject: Panic on mount with write-locked USB media (umass) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Apr 2005 19:36:53 -0000 I have recently been using a USB memory stick. It's a generic device which only identifies itself as " Removable Direct Access SCSI-2 Device". Works fine. Then I plugged it in with the write lock switch on and tried to mount it. "mount_msdosfs: /dev/da0s1: Permission denied" Hey! I'm root! This is supposed to work. Sounds like the partitioning and GEOM foot shooting thread. Oh, well, but this really could be handled better. I can mount it just fine as long as I do so as read-only, so it's just annoying. It's what happens if I get stubborn and try to mount it again without the '-r': Fatal trap 12: page fault while in kernel mode fault virtual address = 0x0 fault code = supervisor read, page not present instruction pointer = 0x8:0xc04b5be3 stack pointer = 0x10:0xd5668c1c frame pointer = 0x10:0xd5668c2c 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 = 48 (syncer) [thread pid 48 tid 100049 ] Stopped at g_io_request+0x13: pushl 0(%esi) db> tr Tracing pid 48 td 0xc19c5960 g_io_request(c2546bdc,c218f3c0,a00000a4,cbf02a80,d5668c5c) at g_io_request+0x13 g_vfs_strategy(c2849850,cbf02a80) at g_vfs_strategy+0x49) bufwrite(cbf02a80) at bufwrite+0xf4 bawrite(cbf02a80,) at bawrite+0x13 vop_stdfsync(d5668cd0,c284978c,d5668cac,c0660388,d5668cd0) at vop_stdfsync+0x186 devfs_fsync(d5668cd0) at devfs_fsync+0x23 VOP_FSYNC_APV(c06be280,d5668cd0) at VOP_FSYNC_APV+0x38 sync_vnode(c2849850,c19c5960) at sync_vnode+0x14a sched_sync(0,d5668d48) at shed_sync+0x24d fork_exit(c054ff4,0,d5668d48) at fork_exit+0x74 fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xd5668d7c, ebp = 0 --- I can reproduce this at will. -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634