XFS internal error xfs_da_do_buf(1) at line 2015 of file fs/xfs/xfs_da_btree.c

From: Adam Nielsen
Date: Sat Jan 03 2009 - 20:23:59 EST


Hi all,

I'm having a recurring problem with XFS which started about a day ago. All of a sudden when reading a certain part of the disk (not sure where, but my nightly backups trigger it) I get an infinite loop of these messages appearing in my logs:

xfs_da_do_buf: bno 8388608
dir: inode 3087268096
Filesystem "md0": XFS internal error xfs_da_do_buf(1) at line 2015 of file fs/xfs/xfs_da_btree.c. Caller 0xffffffff802eba63
Pid: 4445, comm: metalog Tainted: P 2.6.28-rc2 #3
Call Trace:
[<ffffffff802eba63>] xfs_da_read_buf+0x24/0x29
[<ffffffff802eb6aa>] xfs_da_do_buf+0x2d2/0x621
[<ffffffff80267fb0>] balance_dirty_pages_ratelimited_nr+0x300/0x329
[<ffffffff802a52af>] block_write_end+0x4a/0x54
[<ffffffff802eba63>] xfs_da_read_buf+0x24/0x29
[<ffffffff802ecd0a>] xfs_da_node_lookup_int+0x5b/0x225
[<ffffffff802ecd0a>] xfs_da_node_lookup_int+0x5b/0x225
[<ffffffff802f2908>] xfs_dir2_node_lookup+0x43/0xe7
[<ffffffff802edbff>] xfs_dir2_isleaf+0x19/0x4a
[<ffffffff802ee357>] xfs_dir_lookup+0x10f/0x14f
[<ffffffff80297a74>] __d_lookup+0x11a/0x143
[<ffffffff80314b4b>] xfs_lookup+0x48/0xa5
[<ffffffff8031d06e>] xfs_vn_lookup+0x3c/0x78
[<ffffffff8028fafa>] __lookup_hash+0xfa/0x11e
[<ffffffff8029288d>] do_filp_open+0x159/0x7d7
[<ffffffff80507856>] _spin_unlock+0x10/0x2a
[<ffffffff8029a608>] alloc_fd+0x112/0x123
[<ffffffff8028701e>] do_sys_open+0x48/0xcc
[<ffffffff8020b3bb>] system_call_fastpath+0x16/0x1b

It doesn't seem to interfere with filesystem use, but metalog is logging thousands of these messages into the system log files (the log files grow at about 1MB/minute.)

Does anyone know what this error means? Do I need to reformat the filesystem?

I've restarted a few times and the error goes away until the next nightly backup triggers it again. Killing metalog does seem to stop the messages, so perhaps one of the log files is the culprit? I'm not sure how to map that inode or bno back to a filename. It's always the same bno/inode and always reports metalog as the offending program.

Any suggestions how to go about diagnosing this problem?

Many thanks,
Adam.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/