On Fri, Mar 29, 2013 at 11:43:25AM -0700, Linus Torvalds wrote: > On Fri, Mar 29, 2013 at 9:17 AM, Dave Jones <da...@redhat.com> wrote: > > > > Now that I have that reverted, I'm not seeing msgrcv traces any more, but > > I've started seeing this.. > > > > general protection fault: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC > > Do you have CONFIG_CHECKPOINT_RESTORE enabled? Does it go away if you > disable it? > > I think I foud at least one bug in the MSG_COPY stuff: it leaks the > "copy" allocation if > > mode == SEARCH_LESSEQUAL > > but maybe I'm misreading it. And that shouldn't cause the problem you > see, but it's indicative of how badly tested and thought through the > MSG_COPY code is. > > Totally UNTESTED leak fix appended. Stanislav?
I'll give it a shot. Btw, something that's really bothering me is just how much bogus 'follow-on' spew we have lately. I'm not sure what changed, but it seems to have gotten worse. Here's an oops I just hit.. BUG: unable to handle kernel NULL pointer dereference at 000000000000000f IP: [<ffffffff812c24ca>] testmsg.isra.5+0x1a/0x60 PGD 10fd95067 PUD 10f767067 PMD 0 Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC Modules linked in: phonet netrom llc2 af_key rose af_rxrpc caif_socket caif can_raw cmtp kernelcapi ipt_ULOG nfnetlink can_bcm can scsi_transport_iscsi af_802154 irda ax25 atm ipx x25 p8023 p8022 appletalk pppoe decnet pppox ppp_generic nfc rds slhc psnap crc_ccitt llc lockd sunrpc ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_conntrack nf_conntrack ip6table_filter ip6_tables raid0 snd_hda_codec_realtek snd_hda_intel btusb snd_hda_codec bluetooth microcode serio_raw snd_pcm edac_core pcspkr snd_page_alloc rfkill snd_timer snd soundcore r8169 mii vhost_net tun macvtap macvlan kvm_amd kvm radeon backlight drm_kms_helper ttm CPU 2 Pid: 958, comm: trinity-child20 Not tainted 3.9.0-rc4+ #7 Gigabyte Technology Co., Ltd. GA-MA78GM-S2H/GA-MA78GM-S2H RIP: 0010:[<ffffffff812c24ca>] [<ffffffff812c24ca>] testmsg.isra.5+0x1a/0x60 RSP: 0018:ffff880117bb5e88 EFLAGS: 00010246 RAX: ffffffffffffffff RBX: 0000000000000004 RCX: 0000000000000078 RDX: 0000000000000004 RSI: fffffffffffffffe RDI: 000000000000000f RBP: ffff880117bb5e88 R08: 0000000000000004 R09: 0000000000000001 R10: ffff880117bb8000 R11: 0000000000000001 R12: fffffffffffffffe R13: ffff88010fd10308 R14: ffff88010fd10258 R15: ffffffffffffffff FS: 00007fa89c256740(0000) GS:ffff88012aa00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000000000000f CR3: 000000010f76c000 CR4: 00000000000007e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process trinity-child20 (pid: 958, threadinfo ffff880117bb4000, task ffff880117bb8000) Stack: ffff880117bb5f68 ffffffff812c3746 0000000000000000 ffff880117bb8000 ffff880117bb8000 ffff880117bb8000 ffffffff81c7ace0 ffffffff812c2430 0000000000000004 0000000000000000 000000000000ffff 00000000652a928e Call Trace: [<ffffffff812c3746>] do_msgrcv+0x1a6/0x5f0 [<ffffffff812c2430>] ? msg_security+0x10/0x10 [<ffffffff810b6c55>] ? trace_hardirqs_on_caller+0x115/0x1a0 [<ffffffff8134b39e>] ? trace_hardirqs_on_thunk+0x3a/0x3f [<ffffffff812c3ba5>] sys_msgrcv+0x15/0x20 [<ffffffff816cd942>] system_call_fastpath+0x16/0x1b Code: c3 48 c7 c0 f2 ff ff ff eb e5 0f 1f 80 00 00 00 00 66 66 66 66 90 55 83 fa 02 48 89 e5 74 3a 7e 28 83 fa 03 74 13 83 fa 04 75 0a <48> 39 37 b8 01 00 00 00 7e 02 31 c0 5d c3 48 3b 37 74 f7 b8 01 RIP [<ffffffff812c24ca>] testmsg.isra.5+0x1a/0x60 RSP <ffff880117bb5e88> CR2: 000000000000000f ---[ end trace 8f0713d2aacb6aa3 ]--- BUG: sleeping function called from invalid context at kernel/rwsem.c:20 in_atomic(): 1, irqs_disabled(): 0, pid: 958, name: trinity-child20 INFO: lockdep is turned off. Pid: 958, comm: trinity-child20 Tainted: G D 3.9.0-rc4+ #7 Call Trace: [<ffffffff8107dba5>] __might_sleep+0x145/0x200 [<ffffffff816c215a>] down_read+0x2a/0xa0 [<ffffffff8105fa14>] exit_signals+0x24/0x130 [<ffffffff8104b80c>] do_exit+0xbc/0xd10 [<ffffffff81048b25>] ? kmsg_dump+0x1b5/0x230 [<ffffffff81048995>] ? kmsg_dump+0x25/0x230 [<ffffffff816c6b6c>] oops_end+0x9c/0xe0 [<ffffffff816b7a40>] no_context+0x268/0x275 [<ffffffff816b7ac5>] __bad_area_nosemaphore+0x78/0x1d1 [<ffffffff816b7c31>] bad_area_nosemaphore+0x13/0x15 [<ffffffff816c90e6>] __do_page_fault+0x366/0x5b0 [<ffffffff810b72b5>] ? __lock_acquire+0x2e5/0x1a00 [<ffffffff810b3348>] ? trace_hardirqs_off_caller+0x28/0xc0 [<ffffffff8134b3dd>] ? trace_hardirqs_off_thunk+0x3a/0x3c [<ffffffff816c933e>] do_page_fault+0xe/0x10 [<ffffffff816c5fa2>] page_fault+0x22/0x30 [<ffffffff812c24ca>] ? testmsg.isra.5+0x1a/0x60 [<ffffffff812d80b6>] ? security_msg_queue_msgrcv+0x16/0x20 [<ffffffff812c3746>] do_msgrcv+0x1a6/0x5f0 [<ffffffff812c2430>] ? msg_security+0x10/0x10 [<ffffffff810b6c55>] ? trace_hardirqs_on_caller+0x115/0x1a0 [<ffffffff8134b39e>] ? trace_hardirqs_on_thunk+0x3a/0x3f [<ffffffff812c3ba5>] sys_msgrcv+0x15/0x20 [<ffffffff816cd942>] system_call_fastpath+0x16/0x1b note: trinity-child20[958] exited with preempt_count 1 BUG: scheduling while atomic: trinity-child20/958/0x10000002 INFO: lockdep is turned off. Modules linked in: phonet netrom llc2 af_key rose af_rxrpc caif_socket caif can_raw cmtp kernelcapi ipt_ULOG nfnetlink can_bcm can scsi_transport_iscsi af_802154 irda ax25 atm ipx x25 p8023 p8022 appletalk pppoe decnet pppox ppp_generic nfc rds slhc psnap crc_ccitt llc lockd sunrpc ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_conntrack nf_conntrack ip6table_filter ip6_tables raid0 snd_hda_codec_realtek snd_hda_intel btusb snd_hda_codec bluetooth microcode serio_raw snd_pcm edac_core pcspkr snd_page_alloc rfkill snd_timer snd soundcore r8169 mii vhost_net tun macvtap macvlan kvm_amd kvm radeon backlight drm_kms_helper ttm Pid: 958, comm: trinity-child20 Tainted: G D 3.9.0-rc4+ #7 Call Trace: [<ffffffff816b8792>] __schedule_bug+0x61/0x70 [<ffffffff816c38af>] __schedule+0x8df/0x950 [<ffffffff81083bb8>] __cond_resched+0x18/0x30 [<ffffffff816c3dea>] _cond_resched+0x3a/0x50 [<ffffffff8117712f>] munlock_vma_pages_range+0xbf/0xe0 [<ffffffff8117b6e7>] exit_mmap+0x57/0x160 [<ffffffff811a9b5e>] ? __khugepaged_exit+0xee/0x130 [<ffffffff8119c485>] ? kmem_cache_free+0x335/0x380 [<ffffffff811a9b5e>] ? __khugepaged_exit+0xee/0x130 [<ffffffff81042047>] mmput+0x77/0x100 [<ffffffff8104b9e1>] do_exit+0x291/0xd10 [<ffffffff81048b25>] ? kmsg_dump+0x1b5/0x230 [<ffffffff81048995>] ? kmsg_dump+0x25/0x230 [<ffffffff816c6b6c>] oops_end+0x9c/0xe0 [<ffffffff816b7a40>] no_context+0x268/0x275 [<ffffffff816b7ac5>] __bad_area_nosemaphore+0x78/0x1d1 [<ffffffff816b7c31>] bad_area_nosemaphore+0x13/0x15 [<ffffffff816c90e6>] __do_page_fault+0x366/0x5b0 [<ffffffff810b72b5>] ? __lock_acquire+0x2e5/0x1a00 [<ffffffff810b3348>] ? trace_hardirqs_off_caller+0x28/0xc0 [<ffffffff8134b3dd>] ? trace_hardirqs_off_thunk+0x3a/0x3c [<ffffffff816c933e>] do_page_fault+0xe/0x10 [<ffffffff816c5fa2>] page_fault+0x22/0x30 [<ffffffff812c24ca>] ? testmsg.isra.5+0x1a/0x60 [<ffffffff812d80b6>] ? security_msg_queue_msgrcv+0x16/0x20 [<ffffffff812c3746>] do_msgrcv+0x1a6/0x5f0 [<ffffffff812c2430>] ? msg_security+0x10/0x10 [<ffffffff810b6c55>] ? trace_hardirqs_on_caller+0x115/0x1a0 [<ffffffff8134b39e>] ? trace_hardirqs_on_thunk+0x3a/0x3f [<ffffffff812c3ba5>] sys_msgrcv+0x15/0x20 [<ffffffff816cd942>] system_call_fastpath+0x16/0x1b That's a ton of not-very-interesting crap that makes me thankful I have a serial console. Most users aren't so lucky. Is there any way we can silence all that if we've just oopsed ? Related: is there any value in printing out all the ? symbols on kernels with frame pointers enabled ? Dave -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/