From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761414Ab2FGTdi (ORCPT ); Thu, 7 Jun 2012 15:33:38 -0400 Received: from mail.skyhub.de ([78.46.96.112]:39885 "EHLO mail.skyhub.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754129Ab2FGTdg (ORCPT ); Thu, 7 Jun 2012 15:33:36 -0400 Date: Thu, 7 Jun 2012 21:33:31 +0200 From: Borislav Petkov To: Peter Zijlstra Cc: Rus , linux-kernel@vger.kernel.org Subject: lockdep and kmemcheck Message-ID: <20120607193331.GA20723@liondog.tnic> Mail-Followup-To: Borislav Petkov , Peter Zijlstra , Rus , linux-kernel@vger.kernel.org References: <20120607142459.GB5053@x1.osrc.amd.com> <20120607151352.GA8261@x1.osrc.amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Peter, does it ring a bell? This is LOCKDEP with CONFIG_KMEMCHECK. On Thu, Jun 07, 2012 at 10:02:33PM +0300, Rus wrote: > > Do you have CONFIG_DETECT_HUNG_TASK enabled? Also CONFIG_PROVE_LOCKING, > > CONFIG_KMEMCHECK, CONFIG_DEBUG_PREEMPT. These are just a couple of debug > > options to enable right now which could tell us more. > > Kmemcheck setting is prevented the booting of the 3.5-rc1 with the > following messages : > > kmemcheck: Limiting number of CPUs to 1. > kmemcheck: Initialized > ------------[ cut here ]------------ > WARNING: at kernel/lockdep.c:2739 lockdep_trace_alloc+0xcd/0xd0() > Hardware name: To be filled by O.E.M. > Modules linked in: > Pid: 1, comm: swapper/0 Not tainted 3.5.0-rc1 #3 > Call Trace: > [] warn_slowpath_common+0x7a/0xb0 > [] warn_slowpath_null+0x15/0x20 > [] lockdep_trace_alloc+0xcd/0xd0 > [] __alloc_pages_nodemask+0x7e/0x890 > [] ? __alloc_pages_nodemask+0x189/0x890 > [] ? trace_hardirqs_off_thunk+0x3a/0x3c > [] ? trace_hardirqs_off_thunk+0x3a/0x3c > [] ? error_exit+0x30/0xb0 > [] kmemcheck_alloc_shadow+0x29/0xb0 > [] new_slab+0x1fa/0x2e0 > [] __slab_alloc.isra.51.constprop.55+0x3e8/0x40e > [] ? error_exit+0x30/0xb0 > [] kmem_cache_alloc+0x87/0xb0 > [] idr_pre_get+0x60/0x90 > [] ida_pre_get+0x1b/0x90 > [] create_worker+0x42/0x170 > [] init_workqueues+0x1f2/0x393 > [] ? usermodehelper_init+0x36/0x36 > [] ? usermodehelper_init+0x36/0x36 > [] do_one_initcall+0x122/0x180 > [] kernel_init+0x9b/0x1f6 > [] kernel_thread_helper+0x4/0x10 > [] ? retint_restore_args+0x13/0x13 > [] ? start_kernel+0x3d2/0x3d2 > [] ? gs_change+0x13/0x13 > ---[ end trace 6d450e935ee1897c ]--- > MCE: In-kernel MCE decoding enabled. > NMI watchdog: enabled, takes one hw-pmu counter. > Brought up 1 CPUs > ---------------- > | NMI testsuite: > -------------------- > remote IPI: ok | > local IPI: > ------------[ cut here ]------------ > ------------[ cut here ]------------ > WARNING: at arch/x86/mm/kmemcheck/kmemcheck.c:634 kmemcheck_fault+0xb1/0xc0() > Hardware name: To be filled by O.E.M. > Modules linked in: > Pid: 1, comm: swapper/0 Tainted: G W 3.5.0-rc1 #3 > Call Trace: > [] warn_slowpath_common+0x7a/0xb0 > [] warn_slowpath_null+0x15/0x20 > [] kmemcheck_fault+0xb1/0xc0 > [] do_page_fault+0x3f8/0x480 > [] ? trace_hardirqs_off_thunk+0x3a/0x3c > [] page_fault+0x25/0x30 > [] ? vt_console_print+0xad/0x3b0 > [] ? vt_console_print+0x6a/0x3b0 > [] ? do_raw_spin_unlock+0x5d/0xb0 > [] console_unlock+0x174/0x280 > [] vprintk_emit+0x16c/0x580 > [] ? kmemcheck_fault+0xb1/0xc0 > [] printk+0x5c/0x5e > [] ? kmemcheck_fault+0xb1/0xc0 > [] warn_slowpath_common+0x39/0xb0 > [] warn_slowpath_null+0x15/0x20 > [] kmemcheck_fault+0xb1/0xc0 > [] do_page_fault+0x3f8/0x480 > [] ? trace_hardirqs_off_thunk+0x3a/0x3c > [] page_fault+0x25/0x30 > [] ? x86_perf_event_update+0x2a/0xb0 > [] x86_pmu_handle_irq+0x96/0x130 > [] perf_event_nmi_handler+0x1d/0x20 > [] nmi_handle.isra.0+0x81/0xd0 > [] ? __register_nmi_handler+0x190/0x190 > [] do_nmi+0x108/0x380 > [] end_repeat_nmi+0x1a/0x1e > [] ? delay_tsc+0x29/0xf0 > [] ? delay_tsc+0x29/0xf0 > [] ? delay_tsc+0x29/0xf0 > <> [] __delay+0xa/0x10 > [] __const_udelay+0x2b/0x30 > [] test_nmi_ipi.constprop.2+0x51/0x84 > [] local_ipi+0x21/0x23 > [] dotest.constprop.1+0x6/0x7b > [] nmi_selftest+0x8f/0x185 > [] native_smp_cpus_done+0x2d/0x11e > [] smp_init+0x97/0x9f > [] kernel_init+0xbf/0x1f6 > [] kernel_thread_helper+0x4/0x10 > [] ? retint_restore_args+0x13/0x13 > [] ? start_kernel+0x3d2/0x3d2 > [] ? gs_change+0x13/0x13 > ---[ end trace 6d450e935ee1897d ]--- > WARNING: at arch/x86/mm/kmemcheck/kmemcheck.c:634 kmemcheck_fault+0xb1/0xc0() > Hardware name: To be filled by O.E.M. > Modules linked in: > Pid: 1, comm: swapper/0 Tainted: G W 3.5.0-rc1 #3 > Call Trace: > [] warn_slowpath_common+0x7a/0xb0 > [] warn_slowpath_null+0x15/0x20 > [] kmemcheck_fault+0xb1/0xc0 > [] do_page_fault+0x3f8/0x480 > [] ? trace_hardirqs_off_thunk+0x3a/0x3c > [] page_fault+0x25/0x30 > [] ? x86_perf_event_update+0x2a/0xb0 > [] x86_pmu_handle_irq+0x96/0x130 > [] perf_event_nmi_handler+0x1d/0x20 > [] nmi_handle.isra.0+0x81/0xd0 > [] ? __register_nmi_handler+0x190/0x190 > [] do_nmi+0x108/0x380 > [] end_repeat_nmi+0x1a/0x1e > [] ? delay_tsc+0x29/0xf0 > [] ? delay_tsc+0x29/0xf0 > [] ? delay_tsc+0x29/0xf0 > <> [] __delay+0xa/0x10 > [] __const_udelay+0x2b/0x30 > [] test_nmi_ipi.constprop.2+0x51/0x84 > [] local_ipi+0x21/0x23 > [] dotest.constprop.1+0x6/0x7b > [] nmi_selftest+0x8f/0x185 > [] native_smp_cpus_done+0x2d/0x11e > [] smp_init+0x97/0x9f > [] kernel_init+0xbf/0x1f6 > [] kernel_thread_helper+0x4/0x10 > [] ? retint_restore_args+0x13/0x13 > [] ? start_kernel+0x3d2/0x3d2 > [] ? gs_change+0x13/0x13 > ---[ end trace 6d450e935ee1897e ]--- > ok | > -------------------- > Good, all 2 testcases passed! | > .................... > Freeing unused kernel memory: 228k freed > Freeing unused kernel memory: 1388k freed > init (1) used greatest stack depth: 3256 bytes left > Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000005 > > Pid: 1, comm: init Tainted: G W 3.5.0-rc1 #3 > Call Trace: > [] panic+0xb5/0x1c6 > [] ? do_exit+0x749/0x920 > [] do_exit+0x7f1/0x920 > [] do_group_exit+0x44/0xb0 > [] get_signal_to_deliver+0x1e1/0x5f0 > [] ? __send_signal+0x16f/0x2f0 > [] do_signal+0x3a/0x920 > [] ? _raw_spin_unlock_irqrestore+0x45/0x80 > [] ? force_sig_info+0xdc/0x100 > [] ? syscall_trace_leave+0x122/0x130 > [] do_notify_resume+0x6d/0xa0 > [] ? trace_hardirqs_on_thunk+0x3a/0x3f > [] int_signal+0x12/0x17 > [] ? run_init_process+0x1e/0x20 > [] ? init_post+0x45/0xbe > [] ? kernel_init+0x1f6/0x1f6 > [] ? do_early_param+0x8c/0x8c > [] ? kernel_thread_helper+0x4/0x10 > [] ? retint_restore_args+0x13/0x13 > [] ? start_kernel+0x3d2/0x3d2 > [] ? gs_change+0x13/0x13 > ......... > > After disabling kmemcheck the box is able to boot again. > > Rus > > -- > SfinxSoft > http://sfinxsoft.com > -- Regards/Gruss, Boris.