xfs
[Top] [All Lists]

xfs_force_shutdown on full filesystem

To: linux-xfs@xxxxxxxxxxx
Subject: xfs_force_shutdown on full filesystem
From: "Roger Willcocks" <willcor@xxxxxxxxx>
Date: Sat, 25 Feb 2006 23:09:13 +0000
Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=dS1tBDqAvMSLI6tlAF9wd+zRgMN/lE5EshydMAhpQstnhdfBNiEoAKaLMWSrCzJJMN+qnq3Hriiq4gvstHd2f5jBb8UHqYqOkW8/EqYlVPBIHbIJOx6a8GHMW67F+te/x0xzv+0PbR5r1NfrSEEf2Go2yZquzhYAVMAPmfFaPO0=
Sender: linux-xfs-bounce@xxxxxxxxxxx
I can reliably generate an xfs_force_shutdown error on a stock
2.6.12.6 kernel by

mkfs.xfs -f -d size=1000m /dev/sda
mount /dev/sda /mnt/disk1
cd /
tar cf - . --exclude mnt | (cd /mnt/disk1; tar xvf -)

When the tar has filled the disk (and is getting file system full
errors), let it run for a bit longer (so the disk is really, really
full) then hit ^C and rerun the tar command. You might need to rerun
it a couple of times, but pretty soon tar starts getting i/o errors.

df at this point shows:

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda               1019200 -73786976294836035584   3193188 101% /mnt/disk1

I added a stack dump in xfs_force_shutdown (as per xfs_trans.c
1.168/1.169) and so far I've seen two different failure modes:

Filesystem "sda": XFS internal error xfs_trans_cancel at line 1090 of file
fs/xfs/xfs_trans.c.  Caller 0xf894522d
 [<f893e3c3>] xfs_trans_cancel+0xd3/0x100 [xfs]
 [<f894522d>] xfs_create+0x27d/0x680 [xfs]
 [<f894522d>] xfs_create+0x27d/0x680 [xfs]
 [<f88f45e4>] xfs_attr_get+0x94/0xb0 [xfs]
 [<f8950209>] linvfs_mknod+0x2c9/0x3b0 [xfs]
 [<c01d3160>] avc_has_perm_noaudit+0x40/0x150
 [<c01d31ac>] avc_has_perm_noaudit+0x8c/0x150
 [<c01d32b3>] avc_has_perm+0x43/0x50
 [<c01d32b3>] avc_has_perm+0x43/0x50
 [<f8950306>] linvfs_create+0x16/0x20 [xfs]
 [<c01680ea>] vfs_create+0x9a/0x130
 [<c0168a11>] open_namei+0x661/0x6c0
 [<c01584e4>] filp_open+0x34/0x60
 [<c01588e5>] sys_open+0x35/0x70
 [<c0102c5b>] sysenter_past_esp+0x54/0x79
xfs_force_shutdown(sda,0x8) called from line 1091 of file fs/xfs/xfs_trans.c.
Return address = 0xf89535e 0
Filesystem "sda": Corruption of in-memory data detected.  Shutting down
filesystem: sda
Please umount the filesystem, and rectify the problem(s)
xfs_force_shutdown(sda,0x1) called from line 353 of file fs/xfs/xfs_rw.c.
Return address = 0xf89535e0

...and...

Filesystem "sda": XFS internal error xfs_trans_cancel at line 1090 of file
fs/xfs/xfs_trans.c.  Caller 0xf8946326
 [<f893e3c3>] xfs_trans_cancel+0xd3/0x100 [xfs]
 [<f8946326>] xfs_mkdir+0x236/0x630 [xfs]
 [<f8946326>] xfs_mkdir+0x236/0x630 [xfs]
 [<f8950253>] linvfs_mknod+0x313/0x3b0 [xfs]
 [<c01d3160>] avc_has_perm_noaudit+0x40/0x150
 [<c01d31ac>] avc_has_perm_noaudit+0x8c/0x150
 [<c01d32b3>] avc_has_perm+0x43/0x50
 [<c01d32b3>] avc_has_perm+0x43/0x50
 [<c01e0ec0>] security_transition_sid+0x20/0x30
 [<f895032b>] linvfs_mkdir+0x1b/0x20 [xfs]
 [<c0168e80>] vfs_mkdir+0x90/0x120
 [<c0168fa4>] sys_mkdir+0x94/0xc0
 [<c015945d>] sys_write+0x3d/0x70
 [<c0102c5b>] sysenter_past_esp+0x54/0x79
xfs_force_shutdown(sda,0x8) called from line 1091 of file fs/xfs/xfs_trans.c.
Return address = 0xf89535e0
Filesystem "sda": Corruption of in-memory data detected.  Shutting down
filesystem: sda
Please umount the filesystem, and rectify the problem(s)

--
Roger


<Prev in Thread] Current Thread [Next in Thread>