RESEND: xattr issue with 3.11 kernel
David Zafman
david.zafman at inktank.com
Fri Oct 4 15:48:17 CDT 2013
<<Plain Text>>
This was also seen on a customized 3.10 kernel, but didn't reproduce on the Ubuntu 13.04 packaged 3.8 kernel.
$ cat /etc/issue
Ubuntu 13.04 \n \l
$ uname -a
Linux ubuntu 3.11.0-031100-generic #201309021735 SMP Mon Sep 2 21:36:21 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
$ mount | grep /mnt
/dev/sdb on /mnt type xfs (rw)
$ ./xattr-test.sh /mnt/foo 10240
8
16
32
64
128
256
512
1024
2048
setfattr: /mnt/foo: Structure needs cleaning
failure to remove user.test1557
Oct 4 12:47:44 ubuntu kernel: [ 1824.541889] ffff88003a005000: 46 c4 4f 2f 00 00 06 b5 46 c4 4f a6 00 00 06 b4 F.O/....F.O.....
Oct 4 12:47:44 ubuntu kernel: [ 1824.542038] ffff88003a005010: 46 c4 4f a7 00 00 06 b3 46 c4 4f a8 00 00 06 b2 F.O.....F.O.....
Oct 4 12:47:44 ubuntu kernel: [ 1824.542121] ffff88003a005020: 46 c4 4f a9 00 00 06 b1 46 c4 4f aa 00 00 06 b0 F.O.....F.O.....
Oct 4 12:47:44 ubuntu kernel: [ 1824.542201] ffff88003a005030: 46 c4 4f ab 00 00 06 af 46 c4 4f ac 00 00 06 ae F.O.....F.O.....
Oct 4 12:47:44 ubuntu kernel: [ 1824.542286] XFS (sdb): Internal error xfs_da_do_buf(2) at line 2694 of file /home/apw/COD/linux/fs/xfs/xfs_da_btree.c. Caller 0xffffffffa0304423
Oct 4 12:47:44 ubuntu kernel: [ 1824.542286]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542421] CPU: 0 PID: 35058 Comm: setfattr Not tainted 3.11.0-031100-generic #201309021735
Oct 4 12:47:44 ubuntu kernel: [ 1824.542422] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/31/2013
Oct 4 12:47:44 ubuntu kernel: [ 1824.542425] 0000000000000001 ffff8800354ab9f8 ffffffff81720fca 0000000000000007
Oct 4 12:47:44 ubuntu kernel: [ 1824.542428] ffff88003a27b800 ffff8800354aba18 ffffffffa02cd27f ffffffffa0304423
Oct 4 12:47:44 ubuntu kernel: [ 1824.542430] 0000000000000001 ffff8800354aba58 ffffffffa02cd2ee 0000000000000002
Oct 4 12:47:44 ubuntu kernel: [ 1824.542432] Call Trace:
Oct 4 12:47:44 ubuntu kernel: [ 1824.542447] [<ffffffff81720fca>] dump_stack+0x46/0x58
Oct 4 12:47:44 ubuntu kernel: [ 1824.542474] [<ffffffffa02cd27f>] xfs_error_report+0x3f/0x50 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542489] [<ffffffffa0304423>] ? xfs_da3_node_read+0x23/0xd0 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542499] [<ffffffffa02cd2ee>] xfs_corruption_error+0x5e/0x90 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542511] [<ffffffffa030438a>] xfs_da_read_buf+0x1ba/0x230 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542522] [<ffffffffa0304423>] ? xfs_da3_node_read+0x23/0xd0 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542539] [<ffffffffa0332127>] ? xfs_trans_log_buf+0x97/0x100 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542550] [<ffffffffa0304423>] xfs_da3_node_read+0x23/0xd0 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542562] [<ffffffffa030608c>] xfs_da3_blk_unlink.isra.13+0x16c/0x1e0 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542573] [<ffffffffa030633f>] xfs_da3_join+0x9f/0x240 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542584] [<ffffffffa02e6872>] xfs_attr_node_removename+0x192/0x300 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542598] [<ffffffffa0327d5c>] ? xfs_trans_add_item+0x2c/0x70 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542608] [<ffffffffa02e6b9e>] xfs_attr_remove_int+0x1be/0x260 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542617] [<ffffffff812ed87c>] ? security_inode_permission+0x1c/0x30
Oct 4 12:47:44 ubuntu kernel: [ 1824.542628] [<ffffffffa02e8577>] xfs_attr_remove+0xa7/0xb0 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542638] [<ffffffffa02e0c08>] xfs_xattr_set+0x58/0x60 [xfs]
Oct 4 12:47:44 ubuntu kernel: [ 1824.542645] [<ffffffff811d5e66>] generic_removexattr+0x46/0x60
Oct 4 12:47:44 ubuntu kernel: [ 1824.542648] [<ffffffff811d6124>] vfs_removexattr+0xa4/0x140
Oct 4 12:47:44 ubuntu kernel: [ 1824.542651] [<ffffffff811d6212>] removexattr+0x52/0x80
Oct 4 12:47:44 ubuntu kernel: [ 1824.542658] [<ffffffff811be016>] ? final_putname+0x26/0x50
Oct 4 12:47:44 ubuntu kernel: [ 1824.542661] [<ffffffff811be249>] ? putname+0x29/0x40
Oct 4 12:47:44 ubuntu kernel: [ 1824.542665] [<ffffffff811c27c3>] ? user_path_at_empty+0x63/0xa0
Oct 4 12:47:44 ubuntu kernel: [ 1824.542670] [<ffffffff811b4903>] ? __sb_start_write+0x53/0x110
Oct 4 12:47:44 ubuntu kernel: [ 1824.542673] [<ffffffff811d1c68>] ? __mnt_want_write+0x58/0x70
Oct 4 12:47:44 ubuntu kernel: [ 1824.542676] [<ffffffff811d1cac>] ? mnt_want_write+0x2c/0x50
Oct 4 12:47:44 ubuntu kernel: [ 1824.542679] [<ffffffff811d738c>] SyS_removexattr+0x7c/0xd0
Oct 4 12:47:44 ubuntu kernel: [ 1824.542684] [<ffffffff81735cef>] tracesys+0xe1/0xe6
Oct 4 12:47:44 ubuntu kernel: [ 1824.542686] XFS (sdb): Corruption detected. Unmount and run xfs_repair
Oct 4 12:51:21 ubuntu kernel: [ 2041.893539] INFO: task getfattr:35059 blocked for more than 120 seconds.
Oct 4 12:51:21 ubuntu kernel: [ 2041.893650] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Oct 4 12:51:21 ubuntu kernel: [ 2041.893749] getfattr D 0000000000000000 0 35059 2071 0x00000004
Oct 4 12:51:21 ubuntu kernel: [ 2041.893753] ffff8800354a9958 0000000000000002 ffffea0000fdc740 ffffffff00000000
Oct 4 12:51:21 ubuntu kernel: [ 2041.893756] ffff8800354a9fd8 ffff8800354a9fd8 ffff8800354a9fd8 0000000000014580
Oct 4 12:51:21 ubuntu kernel: [ 2041.893758] ffff88003a2c8000 ffff88003982ddc0 0000000000000001 7fffffffffffffff
Oct 4 12:51:21 ubuntu kernel: [ 2041.893761] Call Trace:
Oct 4 12:51:21 ubuntu kernel: [ 2041.893772] [<ffffffff8172b279>] schedule+0x29/0x70
Oct 4 12:51:21 ubuntu kernel: [ 2041.893777] [<ffffffff81728755>] schedule_timeout+0x1e5/0x250
Oct 4 12:51:21 ubuntu kernel: [ 2041.893785] [<ffffffff8136c76e>] ? radix_tree_lookup_slot+0xe/0x10
Oct 4 12:51:21 ubuntu kernel: [ 2041.893793] [<ffffffff81151635>] ? prep_new_page+0x145/0x1e0
Oct 4 12:51:21 ubuntu kernel: [ 2041.893822] [<ffffffffa03186ac>] ? xfs_iext_bno_to_ext+0x8c/0x160 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893826] [<ffffffff81729d68>] __down_common+0x9d/0xed
Oct 4 12:51:21 ubuntu kernel: [ 2041.893836] [<ffffffffa02caffd>] ? _xfs_buf_find+0xfd/0x2b0 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893839] [<ffffffff81729e2b>] __down+0x1d/0x1f
Oct 4 12:51:21 ubuntu kernel: [ 2041.893847] [<ffffffff8108e941>] down+0x41/0x50
Oct 4 12:51:21 ubuntu kernel: [ 2041.893856] [<ffffffffa02cae34>] xfs_buf_lock+0x44/0x110 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893866] [<ffffffffa02caffd>] _xfs_buf_find+0xfd/0x2b0 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893875] [<ffffffffa02cb284>] xfs_buf_get_map+0x34/0x1b0 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893886] [<ffffffffa02cc231>] xfs_buf_read_map+0x31/0x130 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893900] [<ffffffffa0302709>] ? xfs_dabuf_map.isra.4+0x239/0x250 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893917] [<ffffffffa0331c51>] xfs_trans_read_buf_map+0x271/0x490 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893930] [<ffffffffa030429f>] xfs_da_read_buf+0xcf/0x230 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893942] [<ffffffffa0304423>] xfs_da3_node_read+0x23/0xd0 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893946] [<ffffffff8109147a>] ? lg_local_unlock+0x1a/0x20
Oct 4 12:51:21 ubuntu kernel: [ 2041.893950] [<ffffffff811bd536>] ? complete_walk+0xa6/0x120
Oct 4 12:51:21 ubuntu kernel: [ 2041.893961] [<ffffffffa02e7f5b>] xfs_attr_node_list+0x6b/0x4a0 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893966] [<ffffffff811bf14d>] ? path_lookupat+0x6d/0x730
Oct 4 12:51:21 ubuntu kernel: [ 2041.893970] [<ffffffff81729cb6>] ? down_read+0x16/0x2b
Oct 4 12:51:21 ubuntu kernel: [ 2041.893983] [<ffffffffa03161a4>] ? xfs_ilock+0xf4/0x120 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.893995] [<ffffffffa02e8645>] xfs_attr_list_int+0xc5/0xe0 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.894007] [<ffffffffa02e0e46>] xfs_vn_listxattr+0x96/0x170 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.894019] [<ffffffffa02e0b70>] ? xfs_change_file_space+0x370/0x370 [xfs]
Oct 4 12:51:21 ubuntu kernel: [ 2041.894024] [<ffffffff811d654d>] vfs_listxattr+0x4d/0x80
Oct 4 12:51:21 ubuntu kernel: [ 2041.894027] [<ffffffff811d65e9>] listxattr+0x69/0x130
Oct 4 12:51:21 ubuntu kernel: [ 2041.894030] [<ffffffff811d718e>] SyS_listxattr+0x4e/0x90
Oct 4 12:51:21 ubuntu kernel: [ 2041.894034] [<ffffffff81735cef>] tracesys+0xe1/0xe6
-------------------------------------------- Test Script ----------------------------------------
#! /bin/sh
#getfattr format
#
# # file: foo
# user.test="test"
if [ $# != "2" ];
then
echo usage: $0 path count
exit 1
fi
FILENAME=$1
COUNT=$2
rmdir $FILENAME > /dev/null 2>&1
datalen=65536
echo "datadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadatadata" > tmp.$$
while test $datalen != 0
do
dd if=tmp.$$ of=src.$$ bs=512 count=1 conv=notrunc oflag=append 2> /dev/null
datalen=`expr $datalen - 512`
done
rm tmp.$$
for len in 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536
do
mkdir $FILENAME
echo $len
count=0
while test $count != $COUNT
do
entry=user.test`expr $count + 1`
echo "# file: $FILENAME" > data.$$
echo -n "$entry" >> data.$$
echo -n '="' >> data.$$
dd if=src.$$ of=data.$$ bs=$len count=1 conv=notrunc oflag=append 2> /dev/null
echo '"' >> data.$$
#cat data.$$
#read a
setfattr --restore=data.$$
if [ $? != "0" ];
then
echo failure to set $entry
break
fi
count=`expr $count + 1`
#getfattr --dump $FILENAME
done
rm data.$$
rmcount=0
while test $rmcount != $count
do
entry=user.test`expr $rmcount + 1`
setfattr --remove=$entry $FILENAME
if [ $? != "0" ];
then
echo failure to remove $entry
break
fi
rmcount=`expr $rmcount + 1`
done
getfattr --dump $FILENAME
rmdir $FILENAME
done
rm src.$$
exit 0
----------------------------------------------------------------------------------------
David Zafman
Senior Developer
http://www.inktank.com
More information about the xfs
mailing list