Hi,
On Friday, 30 of September 2005 07:26, Rafael J. Wysocki wrote:
> On Friday, 30 of September 2005 01:59, Siddha, Suresh B wrote:
> > On Fri, Sep 30, 2005 at 01:04:35AM +0200, Rafael J. Wysocki wrote:
> > > On Friday, 30 of September 2005 00:29, Siddha, Suresh B wrote:
> > > > Did you try just only my patch on top of 2.6.14-rc2? You can get that
> > > > patch from http://www.x86-64.org/lists/discuss/msg07313.html
> > >
> > > The patch that I tested is attached. I think it's the same one. I've just applied
> > > it on top of 2.6.14-rc2-git7, and it doesn't boot.
> >
> > It works fine for me. Only thing I see though is a warning for UP configuration.
> > Other than that UP, SMP(with and without hotplug) kernels boot fine. I will
> > send the warning fix to Andrew.
> >
> > > The problem (as I see it) is this:
> > > In x86_64_start_kernel() you copy boot_level4_pgt[] into init_level4_pgt[],
> > > and you make the latter your current PGD by loading cr3 with its address.
> > > Fine. With this PGD you call start_kernel() which calls setup_arch(), which
> > > calls zap_low_mappings(0) that fills init_level4_pgt[] (which at this moment
> > > is still your current PGD) with zeros ...
> >
> > It clears only the zeroth entry. Not the whole pgd.
>
> You are absolutely right. I have misread this, sorry.
>
> > Please send me your .config so that I can try reproducing the issue locally
> > here.
>
> Of course. The .config is attached. Generally, it's a non-SMP box, and commenting
> out the zap_low_mappings((0) in setup_arch() makes the box boot again.
One more datapoint: The box boots if I move the zap_low_mappings((0)
in the following way:
--- linux-2.6.14-rc2-git7.orig/arch/x86_64/kernel/setup.c 2005-09-30 07:39:35.000000000 +0200
+++ linux-2.6.14-rc2-git7/arch/x86_64/kernel/setup.c 2005-09-30 08:31:20.000000000 +0200
@@ -571,8 +571,6 @@
init_memory_mapping(0, (end_pfn_map << PAGE_SHIFT));
- zap_low_mappings(0);
-
#ifdef CONFIG_ACPI
/*
* Initialize the ACPI boot-time table parser (gets the RSDP and SDT).
@@ -680,6 +678,8 @@
get_smp_config();
init_apic_mappings();
#endif
+ zap_low_mappings(0);
+
/*
* Request address space for all standard RAM and ROM resources
iHowever, if I place the zap_low_mappings((0) before the
#define CONFIG_X86_LOCAL_APIC in line 673, it doesn't boot.
Certainly init_apic_mappings() is at fault. Could that be a reult of a call to
alloc_bootmem_pages()?.
And one more: I have to boot with "noapic".
Greetings,
Rafael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
|
|