NetBSD Problem Report #29513

From www@netbsd.org  Wed Feb 23 18:49:09 2005
Return-Path: <www@netbsd.org>
Received: by narn.netbsd.org (Postfix, from userid 31301)
	id 0F73263B400; Wed, 23 Feb 2005 18:49:08 +0000 (UTC)
Message-Id: <20050223184908.0F73263B400@narn.netbsd.org>
Date: Wed, 23 Feb 2005 18:49:08 +0000 (UTC)
From: joff@embeddedARM.com
Reply-To: joff@embeddedARM.com
To: gnats-bugs@netbsd.org
Subject: FFS+Softdep panic with unfsck-able file-corruption
X-Send-Pr-Version: www-1.0

>Number:         29513
>Category:       kern
>Synopsis:       FFS+Softdep panic with unfsck-able file-corruption
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Feb 23 18:50:00 +0000 2005
>Closed-Date:    Wed Apr 01 04:08:37 +0000 2009
>Last-Modified:  Wed Apr 01 04:08:37 +0000 2009
>Originator:     Jesse Off
>Release:        2.99.16
>Organization:
Technologic Systems
>Environment:
2.99.16 evbarm TS7200
>Description:
Was extracting a large tar file that was overwriting some existing files and creating new ones when the filesystem ran out of space.  Many messages were printed about disk-full then the kernel panic'ed in inodedep_lookup.  Rebooted, fsck complained about a lot of errors but now when booting up it seems the filesystem is irrevocably damaged and the kernel always panics in bootup in the following way:

/: bad dir ino 30336 at offset 0: mangled entry
panic: bad dir
Stopped in pid 8.1 (sh) at      0xc0389bb0:     mov     r15, r14

Here's output from the original crash during tar xfzv man.tgz -C /

uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
uid 0, pid 380, command tar, on /: file system full
Fatal kernel mode data abort: 'Alignment Fault 3'
trapframe: 0xc2cc16c8
FSR=00000003, FAR=7073088f, spsr=20000013
r0 =c04dafac, r1 =00000439, r2 =00000001, r3 =202d2d20
r4 =70730873, r5 =00000b93, r6 =00000002, r7 =c114d000
r8 =c2eacb30, r9 =00000000, r10=c110f0e4, r11=c2cc1748
r12=c110e000, ssp=c2cc1714, slr=000007ff, pc =c02bf4a0

db> bt
netbsd:inodedep_lookup+0x10
        scp=0xc02bf460 rlv=0xc02c6778 (netbsd:flush_inodedep_deps+0x5c)
        rsp=0xc2cc174c rfp=0xc2cc17a8
        r10=0xc114d000 r9=0x00000b93
        r8=0xc2eacb30 r7=0xc0422dd4 r6=0x00000002 r5=0xc2eacb30
        r4=0x00000000
netbsd:flush_inodedep_deps+0x10
        scp=0xc02c672c rlv=0xc02c61d8 (0xc02c61d8)
        rsp=0xc2cc17ac rfp=0xc2cc1818
        r10=0xc2cc1980 r9=0xc2cc1980
        r8=0xc2eacb30 r7=0x00000000 r6=0x00000000 r5=0xc2eacb30
        r4=0x00000000
0xc02c618c
        scp=0xc02c618c rlv=0xc02cce70 (netbsd:ffs_full_fsync+0x118)
        rsp=0xc2cc181c rfp=0xc2cc18a0
        r10=0x00000004 r9=0xc2cc1980
        r8=0x00000000 r7=0x00000000 r6=0x00000000 r5=0xc2eacb30
        r4=0x00000000
netbsd:ffs_full_fsync+0x10
        scp=0xc02ccd68 rlv=0xc02cca40 (netbsd:ffs_fsync+0x64)
        rsp=0xc2cc18a4 rfp=0xc2cc1970
        r10=0xc2cc1980 r9=0x00000000
        r8=0x00000001 r7=0x00000000 r6=0xc2cc1990 r5=0xc2eacb30
        r4=0x00000000
netbsd:ffs_fsync+0x10
        scp=0xc02cc9ec rlv=0xc03433b0 (0xc03433b0)
        rsp=0xc2cc1974 rfp=0xc2cc19e8
        r10=0x00000000 r9=0x00000000
        r8=0x00000001 r7=0x00000000 r6=0x00000000 r5=0xc2eacb30
        r4=0x00000000
0xc03432fc
        scp=0xc03432fc rlv=0xc03446f4 (0xc03446f4)
        rsp=0xc2cc19ec rfp=0xc2cc1a60
        r10=0xc2442cc0 r9=0xc2cc1b1c
        r8=0xc2442cc0 r7=0x00000000 r6=0x00000000 r5=0xc2eacb30
        r4=0x00000008
0xc03444a0
        scp=0xc03444a0 rlv=0xc0344a30 (0xc0344a30)
        rsp=0xc2cc1a64 rfp=0xc2cc1a80
        r8=0xc2442cc0 r7=0xc04936d4
        r6=0xc04936d4 r5=0x00000000 r4=0xc2eacb30
0xc03449f0
        scp=0xc03449f0 rlv=0xc034292c (netbsd:getcleanvnode+0x11c)
        rsp=0xc2cc1a84 rfp=0xc2cc1ab0
        r5=0xc03f37c8 r4=0xc2eacb30
netbsd:getcleanvnode+0x10
        scp=0xc0342820 rlv=0xc0342f40 (netbsd:getnewvnode+0xe8)
        rsp=0xc2cc1ab4 rfp=0xc2cc1ae8
        r8=0x00000000 r7=0x00000000
        r6=0xc04df0b4 r5=0xc114e000 r4=0x00000000
netbsd:getnewvnode+0x10
        scp=0xc0342e68 rlv=0xc02cabd0 (0xc02cabd0)
        rsp=0xc2cc1aec rfp=0xc2cc1b48
        r10=0xc114e000 r9=0x00000da3
        r8=0xc2cc1bb0 r7=0xc2d36900 r6=0x07080010 r5=0x00001000
        r4=0x00000000
0xc02cab7c
        scp=0xc02cab7c rlv=0xc02d01e0 (0xc02d01e0)
        rsp=0xc2cc1b4c rfp=0xc2cc1c90
        r10=0xc114e000 r9=0xc2d34ddc
        r8=0x00000c00 r7=0xc2d36900 r6=0x07080010 r5=0x00000000
        r4=0x00000000
0xc02cf7a0
        scp=0xc02cf7a0 rlv=0xc034202c (netbsd:lookup+0x274)
        rsp=0xc2cc1c94 rfp=0xc2cc1d10
        r10=0xc03f31d8 r9=0xc2cc1ccc
        r8=0xc2cc1e3c r7=0xc2cc1e2c r6=0xc2cc1e50 r5=0xc2d34ddc
        r4=0x00000000
netbsd:lookup+0x10
        scp=0xc0341dc8 rlv=0xc0341a28 (0xc0341a28)
        rsp=0xc2cc1d14 rfp=0xc2cc1d98
        r10=0x00000000 r9=0x00039f2c
        r8=0xc2eac938 r7=0xc2cc1e50 r6=0x00000000 r5=0xc2cc1e2c
        r4=0xc244b0a8
0xc0341900
        scp=0xc0341900 rlv=0xc034ca6c (netbsd:rename_files+0xd4)
        rsp=0xc2cc1d9c rfp=0xc2cc1ee0
        r10=0x00000000 r9=0x00039f2c
        r8=0xc2eac938 r7=0x00038664 r6=0xc2442cc0 r5=0x00000000
        r4=0x0003d300
netbsd:rename_files+0x10
        scp=0xc034c9a8 rlv=0xc038e008 (0xc038e008)
        rsp=0xc2cc1ee4 rfp=0xc2cc1f60
        r10=0x00000004 r8=0xc244a3e0
        r7=0xc0423834 r6=0xc2cc1fb4 r5=0x00000002 r4=0xefa00080
0xc038dec8
        scp=0xc038dec8 rlv=0xc038de44 (0xc038de44)
        rsp=0xc2cc1f64 rfp=0xc2cc1fb0
        r10=0x00039f28 r9=0x00039f2c
        r8=0x00000001 r7=0xc04df820 r6=0xc2442cc0 r5=0x00000000
        r4=0xc244a3e0
0xc038ddd0
        scp=0xc038ddd0 rlv=0xc03910c8 (netbsd:swi_entry+0x28)
        rsp=0xc2cc1fb4 rfp=0xbfffea9c
        r8=0x00039ee4 r7=0x000361fc
        r6=0x00038664 r5=0x00038660 r4=0x0003d300
db>

db> show registers
spsr        0x20000013
r0          0xc04dafac  inodedep_hashtbl
r1          0x439
r2          0x1
r3          0x202d2d20
r4          0x70730873
r5          0xb93
r6          0x2
r7          0xc114d000
r8          0xc2eacb30
r9          0
r10         0xc110f0e4
r11         0xc2cc1748
r12         0xc110e000
usr_sp      0xbfffea80
usr_lr      0x11444
svc_sp      0xc2cc1714
svc_lr      0x7ff
pc          0xc02bf4a0  inodedep_lookup+0x50
und_sp      0xc2cc0ff0
abt_sp      0xc01ea000
irq_sp      0xc01f2000
netbsd:inodedep_lookup+0x50:    ldr     r3, [r4, #0x01c]

>How-To-Repeat:

>Fix:

>Release-Note:

>Audit-Trail:

From: Andrew Doran <ad@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/29513 CVS commit: src
Date: Sun, 22 Feb 2009 20:28:07 +0000 (UTC)

 Module Name:	src
 Committed By:	ad
 Date:		Sun Feb 22 20:28:07 UTC 2009

 Modified Files:
 	src/doc: CHANGES
 	src/lib/libp2k: p2k.c
 	src/sbin/fsck_lfs: lfs.c
 	src/sbin/mount: mount.8
 	src/sbin/newfs_lfs: make_lfs.c
 	src/sbin/tunefs: tunefs.8 tunefs.c
 	src/sys/arch/vax/conf: VAX780
 	src/sys/conf: files
 	src/sys/kern: sys_aio.c vfs_bio.c vfs_subr.c vfs_syscalls.c
 	src/sys/miscfs/specfs: spec_vnops.c
 	src/sys/miscfs/syncfs: sync_subr.c
 	src/sys/modules/ffs: Makefile
 	src/sys/rump/fs/lib/libffs: Makefile
 	src/sys/rump/include/rump: rump.h
 	src/sys/rump/librump/rumpvfs: rump_vfs.c vm_vfs.c
 	src/sys/sys: buf.h vnode.h
 	src/sys/ufs: files.ufs
 	src/sys/ufs/ffs: ffs_alloc.c ffs_balloc.c ffs_extern.h ffs_inode.c
 	    ffs_snapshot.c ffs_vfsops.c ffs_vnops.c ffs_wapbl.c
 	src/sys/ufs/lfs: lfs_rfw.c lfs_vfsops.c lfs_vnops.c
 	src/sys/ufs/ufs: inode.h ufs_dirhash.c ufs_extern.h ufs_inode.c
 	    ufs_lookup.c ufs_readwrite.c ufs_vnops.c ufs_wapbl.c
 	src/sys/uvm: uvm_pager.c
 Removed Files:
 	src/sys/rump/librump/rumpkern/opt: opt_softdep.h
 	src/sys/ufs/ffs: ffs_softdep.c ffs_softdep.stub.c softdep.h

 Log Message:
 PR kern/26878 FFSv2 + softdep = livelock (no free ram)
 PR kern/16942 panic with softdep and quotas
 PR kern/19565 panic: softdep_write_inodeblock: indirect pointer #1 mismatch
 PR kern/26274 softdep panic: allocdirect_merge: ...
 PR kern/26374 Long delay before non-root users can write to softdep partitions
 PR kern/28621 1.6.x "vp != NULL" panic in ffs_softdep.c:4653 while unmounting a softdep (+quota) filesystem
 PR kern/29513 FFS+Softdep panic with unfsck-able file-corruption
 PR kern/31544 The ffs softdep code appears to fail to write dirty bits to disk
 PR kern/31981 stopping scsi disk can cause panic (softdep)
 PR kern/32116 kernel panic in softdep (assertion failure)
 PR kern/32532 softdep_trackbufs deadlock
 PR kern/37191 softdep: locking against myself
 PR kern/40474 Kernel panic after remounting raid root with softdep

 Retire softdep, pass 2. As discussed and later formally announced on the
 mailing lists.


 To generate a diff of this commit:
 cvs rdiff -r1.1191 -r1.1192 src/doc/CHANGES
 cvs rdiff -r1.8 -r1.9 src/lib/libp2k/p2k.c
 cvs rdiff -r1.29 -r1.30 src/sbin/fsck_lfs/lfs.c
 cvs rdiff -r1.65 -r1.66 src/sbin/mount/mount.8
 cvs rdiff -r1.13 -r1.14 src/sbin/newfs_lfs/make_lfs.c
 cvs rdiff -r1.37 -r1.38 src/sbin/tunefs/tunefs.8 src/sbin/tunefs/tunefs.c
 cvs rdiff -r1.1 -r1.2 src/sys/arch/vax/conf/VAX780
 cvs rdiff -r1.942 -r1.943 src/sys/conf/files
 cvs rdiff -r1.22 -r1.23 src/sys/kern/sys_aio.c
 cvs rdiff -r1.215 -r1.216 src/sys/kern/vfs_bio.c
 cvs rdiff -r1.368 -r1.369 src/sys/kern/vfs_subr.c
 cvs rdiff -r1.388 -r1.389 src/sys/kern/vfs_syscalls.c
 cvs rdiff -r1.122 -r1.123 src/sys/miscfs/specfs/spec_vnops.c
 cvs rdiff -r1.36 -r1.37 src/sys/miscfs/syncfs/sync_subr.c
 cvs rdiff -r1.2 -r1.3 src/sys/modules/ffs/Makefile
 cvs rdiff -r1.6 -r1.7 src/sys/rump/fs/lib/libffs/Makefile
 cvs rdiff -r1.9 -r1.10 src/sys/rump/include/rump/rump.h
 cvs rdiff -r1.1 -r0 src/sys/rump/librump/rumpkern/opt/opt_softdep.h
 cvs rdiff -r1.12 -r1.13 src/sys/rump/librump/rumpvfs/rump_vfs.c
 cvs rdiff -r1.3 -r1.4 src/sys/rump/librump/rumpvfs/vm_vfs.c
 cvs rdiff -r1.110 -r1.111 src/sys/sys/buf.h
 cvs rdiff -r1.200 -r1.201 src/sys/sys/vnode.h
 cvs rdiff -r1.18 -r1.19 src/sys/ufs/files.ufs
 cvs rdiff -r1.121 -r1.122 src/sys/ufs/ffs/ffs_alloc.c
 cvs rdiff -r1.51 -r1.52 src/sys/ufs/ffs/ffs_balloc.c
 cvs rdiff -r1.74 -r1.75 src/sys/ufs/ffs/ffs_extern.h
 cvs rdiff -r1.102 -r1.103 src/sys/ufs/ffs/ffs_inode.c
 cvs rdiff -r1.91 -r1.92 src/sys/ufs/ffs/ffs_snapshot.c
 cvs rdiff -r1.116 -r0 src/sys/ufs/ffs/ffs_softdep.c
 cvs rdiff -r1.23 -r0 src/sys/ufs/ffs/ffs_softdep.stub.c
 cvs rdiff -r1.242 -r1.243 src/sys/ufs/ffs/ffs_vfsops.c
 cvs rdiff -r1.110 -r1.111 src/sys/ufs/ffs/ffs_vnops.c
 cvs rdiff -r1.11 -r1.12 src/sys/ufs/ffs/ffs_wapbl.c
 cvs rdiff -r1.11 -r0 src/sys/ufs/ffs/softdep.h
 cvs rdiff -r1.11 -r1.12 src/sys/ufs/lfs/lfs_rfw.c
 cvs rdiff -r1.269 -r1.270 src/sys/ufs/lfs/lfs_vfsops.c
 cvs rdiff -r1.219 -r1.220 src/sys/ufs/lfs/lfs_vnops.c
 cvs rdiff -r1.55 -r1.56 src/sys/ufs/ufs/inode.h
 cvs rdiff -r1.27 -r1.28 src/sys/ufs/ufs/ufs_dirhash.c
 cvs rdiff -r1.60 -r1.61 src/sys/ufs/ufs/ufs_extern.h
 cvs rdiff -r1.77 -r1.78 src/sys/ufs/ufs/ufs_inode.c
 cvs rdiff -r1.100 -r1.101 src/sys/ufs/ufs/ufs_lookup.c
 cvs rdiff -r1.93 -r1.94 src/sys/ufs/ufs/ufs_readwrite.c
 cvs rdiff -r1.172 -r1.173 src/sys/ufs/ufs/ufs_vnops.c
 cvs rdiff -r1.4 -r1.5 src/sys/ufs/ufs/ufs_wapbl.c
 cvs rdiff -r1.93 -r1.94 src/sys/uvm/uvm_pager.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Wed, 01 Apr 2009 04:08:37 +0000
State-Changed-Why:
softdep (softupdates) has been removed.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.