xfs
[Top] [All Lists]

more pagecache invalidation issues?

To: xfs@xxxxxxxxxxx
Subject: more pagecache invalidation issues?
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Thu, 11 Sep 2014 14:14:43 -0700
Delivered-to: xfs@xxxxxxxxxxx
User-agent: Mutt/1.5.23 (2014-03-12)
I just hit this with Linus' tree from a day or two ago when running
xfstests in my 64-bit x86 kvm VM:

[ 1810.820601] ------------[ cut here ]------------
[ 1810.821730] kernel BUG at ../fs/xfs/xfs_aops.c:1373!
[ 1810.822881] invalid opcode: 0000 [#1] SMP 
[ 1810.823177] Modules linked in:
[ 1810.823177] CPU: 0 PID: 5324 Comm: 4980.fsstress.b Not tainted 3.17.0-rc4+ 
#266
[ 1810.823177] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
[ 1810.823177] task: ffff88004fedc910 ti: ffff88000b340000 task.ti: 
ffff88000b340000
[ 1810.823177] RIP: 0010:[<ffffffff8150139b>]  [<ffffffff8150139b>] 
__xfs_get_blocks+0x5cb/0x5d0
[ 1810.823177] RSP: 0018:ffff88000b343998  EFLAGS: 00010202
[ 1810.823177] RAX: ffff880079ddf580 RBX: 0000000000166000 RCX: ffff88004fedd0f8
[ 1810.823177] RDX: 0000000000000001 RSI: 0000000000000000 RDI: 0000000000000246
[ 1810.823177] RBP: ffff88000b343a38 R08: 0000000000000001 R09: 0000000000000000
[ 1810.823177] R10: 0000000000000000 R11: 00000000000785b0 R12: ffff88004863d9a0
[ 1810.823177] R13: ffff88004863d700 R14: ffff88000b343b50 R15: 0000000000000000
[ 1810.823177] FS:  00007ff4401c6700(0000) GS:ffff88007fc00000(0000) 
knlGS:0000000000000000
[ 1810.823177] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1810.823177] CR2: 00007ff4400c2008 CR3: 000000004fed3000 CR4: 00000000000006f0
[ 1810.823177] Stack:
[ 1810.823177]  ffff88000b343a18 0000000000005000 ffff88000b3439c8 
ffff880000000000
[ 1810.823177]  ffff880000000008 0000000000000166 000188004ff2e940 
0000000000005000
[ 1810.823177]  ffff88000b343a18 0000000100000202 000000000000015e 
ffffffffffffffff
[ 1810.823177] Call Trace:
[ 1810.823177]  [<ffffffff815013af>] xfs_get_blocks_direct+0xf/0x20
[ 1810.823177]  [<ffffffff811f3ffe>] __blockdev_direct_IO+0x9ee/0x3340
[ 1810.823177]  [<ffffffff815013a0>] ? __xfs_get_blocks+0x5d0/0x5d0
[ 1810.823177]  [<ffffffff814ff7d0>] xfs_vm_direct_IO+0x130/0x150
[ 1810.823177]  [<ffffffff815013a0>] ? __xfs_get_blocks+0x5d0/0x5d0
[ 1810.823177]  [<ffffffff8117116a>] generic_file_read_iter+0x54a/0x610
[ 1810.823177]  [<ffffffff810f5a8a>] ? mark_held_locks+0x6a/0x90
[ 1810.823177]  [<ffffffff8150c6e9>] xfs_file_read_iter+0xf9/0x2b0
[ 1810.823177]  [<ffffffff81193e3e>] ? might_fault+0x3e/0x90
[ 1810.823177]  [<ffffffff811b9b69>] new_sync_read+0x79/0xb0
[ 1810.823177]  [<ffffffff811bac6b>] vfs_read+0x9b/0x190
[ 1810.823177]  [<ffffffff811baf11>] SyS_read+0x51/0xc0
[ 1810.823177]  [<ffffffff81d9f6e9>] system_call_fastpath+0x16/0x1b

The BUG_ON is this one:

        if (imap.br_startblock == DELAYSTARTBLOCK) {
                BUG_ON(direct);
                if (create) {
                        ..

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