Date: Wed, 27 Jun 2001 14:15:14 -0700 (PDT) From: Umesh Krishnaswamy <umesh@juniper.net> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/28465: Enabling softupdates on a clean but active filesystem can panic the kernel Message-ID: <200106272115.f5RLFER77377@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 28465 >Category: kern >Synopsis: Enabling softupdates on a clean but active filesystem can panic the kernel >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jun 27 14:20:01 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Umesh Krishnaswamy >Release: 4.2-STABLE >Organization: Juniper Networks >Environment: >Description: If you do a bunch of reads and writes to a filesystem, then mount it rdonly and enable softupdates, tunefs will allow you to do so, but the kernel will panic shortly afterwords with the following stack trace. # tunefs -n enable /altroot tunefs: soft updates setp anic: softdep_deallocate_dependencies: dangling deps softdep_deallocate_dependencies(c0368000,dcde5c98,c01b417a,d01cd00c,d01cd00c) at softdep_deallocate_dependencies+0x16 softdep_deallocate_dependencies(d01cd00c) at softdep_deallocate_dependencies+0x16 brelse(d01cd00c,d01cd00c) at brelse+0x6a vinvalbuf(dcd2ee40,0,c41c9800,dcd92400,0) at vinvalbuf+0x24f ffs_reload(c3b4be00,c41c9800,dcd92400,0,c3b4be00) at ffs_reload+0x51 ffs_mount(c3b4be00,4810890f,bfbff83c,dcde5e80,dcd92400) at ffs_mount+0x163 mount(dcd92400,dcde5f80,bfbff83c,bfbffdf9,8049517) at mount+0x4ef syscall2(2f,2f,2f,8049517,bfbffdf9) at syscall2+0x1fd Xint0x80_syscall() at Xint0x80_syscall+0x25 Debugger("panic") Stopped at Debugger+0x40: pushl $-0x1 The filesystem activity has a bunch of unwritten buffers. When soft updates is enabled in this state, the iodone routine i >How-To-Repeat: fs is the name of a filesystem. If you do these four steps, you will panic the system. mount /fs tar cvfz foo.tgz /usr/lib mount -u -o rdonly /fs tunefs -n enable /fs You will trip into this problem after a bunch of tries. I can successfully reproduce this approx 20% of the time. >Fix: >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200106272115.f5RLFER77377>