Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754204AbYKXRoH (ORCPT ); Mon, 24 Nov 2008 12:44:07 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753287AbYKXRnw (ORCPT ); Mon, 24 Nov 2008 12:43:52 -0500 Received: from www.tglx.de ([62.245.132.106]:58102 "EHLO www.tglx.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752502AbYKXRnv (ORCPT ); Mon, 24 Nov 2008 12:43:51 -0500 Date: Mon, 24 Nov 2008 18:43:28 +0100 (CET) From: Thomas Gleixner To: Alexander Beregalov cc: LKML , linux-next@vger.kernel.org, Ingo Molnar , linux-scsi@vger.kernel.org, James.Bottomley@hansenpartnership.com, David Miller Subject: Re: next-20081119: general protection fault: get_next_timer_interrupt() In-Reply-To: Message-ID: References: User-Agent: Alpine 2.00 (LFD 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4927 Lines: 126 Alexander, On Fri, 21 Nov 2008, Alexander Beregalov wrote: > 2008/11/20 Thomas Gleixner : > > Alexander, > > > > On Wed, 19 Nov 2008, Alexander Beregalov wrote: > >> > >> It is 4way X86_64 > >> The kernel does not boot. > > > >> RIP: 0010:[] [] > >> get_next_timer_interrupt+0x11b/0x1f0 > > > > Can you please enable: > > > > CONFIG_DEBUG_OBJECTS=y > > CONFIG_DEBUG_OBJECTS_FREE=y > > CONFIG_DEBUG_OBJECTS_TIMERS=Y > > > > and add "debug_objects" to the kernel command line ? > > I added these options: Thanks. > hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0 > hpet0: 3 comparators, 64-bit 14.318180 MHz counter > ODEBUG: object is on stack, but not annotated ok, that's homework for me. > scsi0 : LSI SAS based MegaRAID driver > Driver 'sd' needs updating - please use bus_type methods > scsi 0:0:0:0: Direct-Access ATA SAMSUNG HE160HJ 0-24 PQ: 0 ANSI: 5 > ------------[ cut here ]------------ > WARNING: at lib/debugobjects.c:215 debug_print_object+0x4f/0x57() > ODEBUG: free active object type: timer_list That's the cause for your boot crash. The scsi/blk code is freeing a page which contains an active timer, so the timer code references gone memory. You triggered it because DEBUG_PAGEALLOC unmaps the page when it's freed. James, or other scsi experts please. > Modules linked in: > Pid: 580, comm: scsi_scan_0 Tainted: G W 2.6.28-rc5-next-20081119 #9 > Call Trace: > [] warn_slowpath+0xae/0xd5 > [] ? debug_check_no_obj_freed+0x75/0x1c8 > [] debug_print_object+0x4f/0x57 > [] debug_check_no_obj_freed+0x9c/0x1c8 > [] kmem_cache_free+0x64/0xc0 > [] ? blk_release_queue+0x61/0x66 > [] blk_release_queue+0x61/0x66 > [] kobject_release+0x52/0x68 > [] ? kobject_release+0x0/0x68 > [] kref_put+0x43/0x4f > [] kobject_put+0x47/0x4b > [] blk_cleanup_queue+0x57/0x5c > [] scsi_free_queue+0x9/0xb > [] scsi_device_dev_release_usercontext+0xdc/0x127 > [] ? scsi_device_dev_release_usercontext+0x0/0x127 > [] execute_in_process_context+0x2a/0x70 > [] scsi_device_dev_release+0x17/0x19 > [] device_release+0x43/0x68 > [] kobject_release+0x52/0x68 > [] ? kobject_release+0x0/0x68 > [] kref_put+0x43/0x4f > [] kobject_put+0x47/0x4b > [] put_device+0x15/0x17 > [] scsi_destroy_sdev+0x48/0x4c > [] scsi_probe_and_add_lun+0xb5d/0xb81 > [] ? scsi_alloc_target+0x22b/0x267 > [] __scsi_scan_target+0x9d/0x598 > [] ? trace_hardirqs_on_caller+0x1f/0x153 > [] ? __mutex_lock_common+0x371/0x3be > [] ? scsi_scan_host_selected+0xb6/0x133 > [] ? trace_hardirqs_on_caller+0x1f/0x153 > [] ? scsi_scan_host_selected+0xb6/0x133 > [] scsi_scan_channel+0x52/0x78 > [] scsi_scan_host_selected+0xf1/0x133 > [] ? do_scan_async+0x0/0x127 > [] do_scsi_scan_host+0x6b/0x70 > [] ? do_scan_async+0x0/0x127 > [] do_scan_async+0x17/0x127 > [] ? do_scan_async+0x0/0x127 > [] kthread+0x49/0x76 > [] child_rip+0xa/0x11 > [] ? restore_args+0x0/0x30 > [] ? kthread+0x0/0x76 > [] ? child_rip+0x0/0x11 > ---[ end trace 4eaa2a86a8e2da22 ]--- > <...> > ata2: port disabled. ignoring. > scsi: waiting for bus probes to complete ... > WARNING: at lib/debugobjects.c:215 debug_print_object+0x4f/0x57() > ODEBUG: free active object type: timer_list Same as above. > BUG: using smp_processor_id() in preemptible [00000000] code: init-early.sh/741 > caller is sock_prot_inuse_add+0x24/0x42 > Pid: 741, comm: init-early.sh Tainted: G W 2.6.28-rc5-next-20081119 #9 > Call Trace: > [] debug_smp_processor_id+0xca/0xe0 > [] sock_prot_inuse_add+0x24/0x42 > [] unix_create1+0x161/0x176 > [] unix_create+0x5d/0x68 > [] __sock_create+0x114/0x17e > [] sock_create+0x2d/0x2f > [] sys_socket+0x29/0x5c > [] system_call_fastpath+0x16/0x1b Dave ??? Thanks, tglx -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/