lkml.org 
[lkml]   [2005]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: 2.6.13 lockup at boot after/at cpu initialization
Moses Leslie <marmoset@malformed.org> wrote:
>
> On some older hardware I'm trying to use, 2.6.13 (and 2.6.12.3, the only
> other 2.6 kernel tested on this hardware) lock up right after boot, there
> are no indications about what specifically is wrong. The last few lines
> before the lockup are:
>
> 382MB LOWMEM available
> DMI 2.3 present
> Allocating PCI resources starting at <some numbers>
> Built 1 zonelists
> Kernel command line: root=/dev/hda1 ro
> Initialing CPU#0
>
> I can get the numbers if needed.
>
> 2.4.31 works without problems.

Well that sucks.

You may get some more output if you add `earlyprintk=vga' to the kernel
boot command line.

To narrow down where it's hanging we'll need to start sprinkling printk()s.
Something like this:


diff -puN init/main.c~a init/main.c
--- devel/init/main.c~a 2005-09-01 21:03:50.000000000 -0700
+++ devel-akpm/init/main.c 2005-09-01 21:05:28.000000000 -0700
@@ -53,6 +53,8 @@
#include <asm/setup.h>
#include <asm/sections.h>

+#define D() do { printk("%s:%d\n", __FILE__, __LINE__); } while (0)
+
/*
* This is one of the first .c files built. Error out early
* if we have compiler trouble..
@@ -467,13 +469,21 @@ asmlinkage void __init start_kernel(void
__stop___param - __start___param,
&unknown_bootoption);
sort_main_extable();
+ D();
trap_init();
+ D();
rcu_init();
+ D();
init_IRQ();
+ D();
pidhash_init();
+ D();
init_timers();
+ D();
softirq_init();
+ D();
time_init();
+ D();

/*
* HACK ALERT! This is early. We're enabling the console before
@@ -481,10 +491,14 @@ asmlinkage void __init start_kernel(void
* this. But we do want output early, in case something goes wrong.
*/
console_init();
+ D();
if (panic_later)
panic(panic_later, panic_param);
+ D();
profile_init();
+ D();
local_irq_enable();
+ D();
#ifdef CONFIG_BLK_DEV_INITRD
if (initrd_start && !initrd_below_start_ok &&
initrd_start < min_low_pfn << PAGE_SHIFT) {
@@ -493,41 +507,68 @@ asmlinkage void __init start_kernel(void
initrd_start = 0;
}
#endif
+ D();
vfs_caches_init_early();
+ D();
mem_init();
+ D();
kmem_cache_init();
+ D();
setup_per_cpu_pageset();
+ D();
numa_policy_init();
+ D();
if (late_time_init)
late_time_init();
+ D();
calibrate_delay();
+ D();
pidmap_init();
+ D();
pgtable_cache_init();
+ D();
prio_tree_init();
+ D();
anon_vma_init();
+ D();
#ifdef CONFIG_X86
if (efi_enabled)
efi_enter_virtual_mode();
#endif
+ D();
fork_init(num_physpages);
+ D();
proc_caches_init();
+ D();
buffer_init();
+ D();
unnamed_dev_init();
+ D();
key_init();
+ D();
security_init();
+ D();
vfs_caches_init(num_physpages);
+ D();
radix_tree_init();
+ D();
signals_init();
+ D();
/* rootfs populating might need page-writeback */
page_writeback_init();
+ D();
#ifdef CONFIG_PROC_FS
proc_root_init();
#endif
+ D();
cpuset_init();
+ D();

check_bugs();
+ D();

acpi_early_init(); /* before LAPIC and SMP init */
+ D();

/* Do the rest non-__init'ed, we're now alive */
rest_init();
_
-
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/

\
 
 \ /
  Last update: 2005-09-02 06:12    [W:0.037 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site