Messages in this thread | | | Date | Thu, 21 Dec 2006 22:05:38 +0100 | From | Ard -kwaak- van Breemen <> | Subject | Re: [Bug 7505] Linux-2.6.18 fails to boot on AMD64 machine |
| |
On Thu, Dec 21, 2006 at 04:04:04PM +0800, Zhang, Yanmin wrote: > I couldn't reproduce it on my EM64T machine. I instrumented function start_kernel and > didn't find irq was enabled before calling init_IRQ. It'll be better if the reporter could > instrument function start_kernel to capture which function enables irq.
Editing init/main.c: preempt_disable(); if (!irqs_disabled()) printk("start_kernel(): bug: interrupts were enabled early\n"); printk("BLAAT17"); build_all_zonelists(); if (!irqs_disabled()) printk("start_kernel(): bug: interrupts were enabled early\n"); printk("BLAAT18"); page_alloc_init(); if (!irqs_disabled()) printk("start_kernel(): bug: interrupts were enabled early\n"); printk("BLAAT19"); printk(KERN_NOTICE "Kernel command line: %s\n", saved_command_line); parse_early_param(); if (!irqs_disabled()) printk("start_kernel(): bug: interrupts were enabled early\n"); printk("BLAAT20"); parse_args("Booting kernel", command_line, __start___param, __stop___param - __start___param, &unknown_bootoption); printk("BLAAT21"); if (!irqs_disabled()) printk("start_kernel(): bug: interrupts were enabled early\n"); sort_main_extable(); if (!irqs_disabled()) printk("start_kernel(): bug: interrupts were enabled early\n"); printk("BLAAT22"); trap_init(); if (!irqs_disabled()) printk("start_kernel(): bug: interrupts were enabled early\n"); printk("BLAAT23");
Results in: ^MAllocating PCI resources starting at 88000000 (gap: 80000000:60000000) ^MBLAAT12BLAAT13<6>PERCPU: Allocating 32960 bytes of per cpu data ^MBLAAT14BLAAT15BLAAT16BLAAT17Built 2 zonelists. Total pages: 1032635 ^MBLAAT18BLAAT19<5>Kernel command line: console=tty0 console=ttyS0,115200 hdb=noprobe hdc=noprobe hdd=noprobe root=/dev/md0 ro panic=30 earlyprintk=serial,ttyS0,115200 ^MBLAAT20<6>ide_setup: hdb=noprobe ^Mide_setup: hdc=noprobe ^Mide_setup: hdd=noprobe ^MBLAAT21start_kernel(): bug: interrupts were enabled early ^Mstart_kernel(): bug: interrupts were enabled early ^MBLAAT22Initializing CPU#0
Hmmm, that actually doesn't make sense to me (unless parse_args is able to enable irq's). -- program signature; begin { telegraaf.com } writeln("<ard@telegraafnet.nl> TEM2"); end . - 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/
| |