On Thu, Jan 31, 2013 at 09:19:23AM +0100, LukÃÅ Czerner wrote:
> I've just run xfstest 013 on xfs and it fails with this backtrace
> Jan 31 03:09:07 rhel6_vm1 kernel: ffff88020b6d1000: 78 78 78 78 78 78 78 78
> 78 78 2f 78 78 78 78 78 xxxxxxxxxx/xxxxx
> Jan 31 03:09:07 rhel6_vm1 kernel: XFS (sda): Internal error xfs_bmbt_verify
> at line 747 of file fs/xfs/xfs_bmap_btree.c. Caller 0xffffffffa025486e
Same problem Cai Qian just reported - a remote symlink with a bmbt
verifier attached to it.
> I can reproduce it every time with xfstest 013 on 3.8.0-rc5.
And the configuration you are testing?
I'd suggest that you add an:
ASSERT(bp->b_ops == NULL);
into xfs_symlink() after the xfs_trans_get_buf() call in the remote
symlink crate loop, because the problem occurring implies that the
code is getting a new buffer with a stale ops structure on it
(though I can't see how that is possible right now).
You should probably put the same assert into
xfs_inactive_symlink_rmt() between the get buf and the
xfs_trans_binval() call, and into xfs_readlink_bmap() after the
contents of a symlink are read from disk.