Re: frequent lockups in 3.18rc4

From: Dave Jones
Date: Wed Nov 26 2014 - 09:34:37 EST


On Tue, Nov 25, 2014 at 10:21:46PM -0800, Linus Torvalds wrote:

> So DaveJ, even though this does appear Xen-centric (Xentric?) and
> you're running on bare hardware, maybe you could do the same thing in
> that x86-64 vmalloc_fault(). The timing with Jürgen is kind of
> intriguing - if 3.18-rc made it happen much more often for him, maybe
> it really is very timing-sensitive, and you actually are seeing a
> non-Xen version of the same thing...

I did try your WARN variant (after fixing the typo)

Woke up to the below trace. Looks like a different issue.

Nnngh.

Dave

NMI watchdog: BUG: soft lockup - CPU#2 stuck for 22s! [trinity-c149:24766]
CPU: 2 PID: 24766 Comm: trinity-c149 Not tainted 3.18.0-rc6+ #98 [loadavg: 156.09 150.24 148.56 21/402 26750]
task: ffff8802285b96f0 ti: ffff8802260e0000 task.ti: ffff8802260e0000
RIP: 0010:[<ffffffff8104658c>] [<ffffffff8104658c>] kernel_map_pages+0xbc/0x120
RSP: 0018:ffff8802260e3768 EFLAGS: 00000202
RAX: 00000000001407e0 RBX: ffffffff817e0c24 RCX: 0000000000140760
RDX: 0000000000000202 RSI: ffff8800000006b0 RDI: 0000000000000001
RBP: ffff8802260e37c8 R08: 8000000000000063 R09: ffff880000000000
R10: 0000000000000001 R11: 0000000000000000 R12: ffff880200000001
R13: 0000000000010000 R14: 0000000001b60000 R15: 0000000000000000
FS: 00007fb8ef71d740(0000) GS:ffff880244400000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00000000018b87f0 CR3: 00000002277fe000 CR4: 00000000001407e0
DR0: 0000000000000000 DR1: 00007f60b71b4000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
Stack:
ffff880123cd7000 ffff8802260e3768 0000000000000000 0000000000000003
0000000000000000 0000000100000001 0000000000123cd6 0000000000000000
0000000000000000 00000000ade00558 ffff8802445d7638 0000000000000001
Call Trace:
[<ffffffff81185ebf>] get_page_from_freelist+0x49f/0xaa0
[<ffffffff810a7431>] ? get_parent_ip+0x11/0x50
[<ffffffff811866ee>] __alloc_pages_nodemask+0x22e/0xb60
[<ffffffff810ad5c5>] ? local_clock+0x25/0x30
[<ffffffff810c6e7c>] ? __lock_acquire.isra.31+0x22c/0x9f0
[<ffffffff813775e0>] ? __radix_tree_preload+0x60/0xf0
[<ffffffff810a7431>] ? get_parent_ip+0x11/0x50
[<ffffffff810c546d>] ? lock_release_holdtime.part.24+0x9d/0x160
[<ffffffff811d093e>] alloc_pages_vma+0xee/0x1b0
[<ffffffff81194f0e>] ? shmem_alloc_page+0x6e/0xc0
[<ffffffff810c6e7c>] ? __lock_acquire.isra.31+0x22c/0x9f0
[<ffffffff81194f0e>] shmem_alloc_page+0x6e/0xc0
[<ffffffff810a7431>] ? get_parent_ip+0x11/0x50
[<ffffffff810a75ab>] ? preempt_count_sub+0x7b/0x100
[<ffffffff8139ac66>] ? __percpu_counter_add+0x86/0xb0
[<ffffffff811b2396>] ? __vm_enough_memory+0x66/0x1c0
[<ffffffff8117cac5>] ? find_get_entry+0x5/0x120
[<ffffffff81300937>] ? cap_vm_enough_memory+0x47/0x50
[<ffffffff81197880>] shmem_getpage_gfp+0x4d0/0x7e0
[<ffffffff81197bd2>] shmem_write_begin+0x42/0x70
[<ffffffff8117c2d4>] generic_perform_write+0xd4/0x1f0
[<ffffffff8117eac2>] __generic_file_write_iter+0x162/0x350
[<ffffffff811f0070>] ? new_sync_read+0xd0/0xd0
[<ffffffff8117ecef>] generic_file_write_iter+0x3f/0xb0
[<ffffffff8117ecb0>] ? __generic_file_write_iter+0x350/0x350
[<ffffffff811f01b8>] do_iter_readv_writev+0x78/0xc0
[<ffffffff811f19e8>] do_readv_writev+0xd8/0x2a0
[<ffffffff8117ecb0>] ? __generic_file_write_iter+0x350/0x350
[<ffffffff8117ecb0>] ? __generic_file_write_iter+0x350/0x350
[<ffffffff810c54b6>] ? lock_release_holdtime.part.24+0xe6/0x160
[<ffffffff810a7431>] ? get_parent_ip+0x11/0x50
[<ffffffff810a75ab>] ? preempt_count_sub+0x7b/0x100
[<ffffffff817df36b>] ? _raw_spin_unlock_irq+0x3b/0x60
[<ffffffff811f1c3c>] vfs_writev+0x3c/0x50
[<ffffffff811f1dac>] SyS_writev+0x5c/0x100
[<ffffffff817e0249>] tracesys_phase2+0xd4/0xd9
Code: 65 48 33 04 25 28 00 00 00 75 75 48 83 c4 50 5b 41 5c 5d c3 0f 1f 00 9c 5a fa 0f 20 e0 48 89 c1 80 e1 7f 0f 22 e1 0f 22 e0 52 9d <eb> cf 66 90 49 bc 00 00 00 00 00 88 ff ff 48 63 f6 49 01 fc 48
sending NMI to other CPUs:


<nothing further on console, accidentally had panic=1 set>
--
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/