Messages in this thread |  | | From | Robert Kaiser <> | | Subject | Re: Anybody got 2.4.0 running on a 386 ? | | Date | Tue, 9 Jan 2001 23:17:11 +0100 |
| |
On Die, 09 Jan 2001 you wrote: > Robert Kaiser wrote: > > > > On Die, 09 Jan 2001 you wrote: > > > Robert Kaiser wrote: > > > > I can't seem to get the new 2.4.0 kernel running on a 386 CPU. > > > > The kernel was built for a 386 Processor, Math emulation has been enabled. > > > > I tried three different 386 boards. Execution seems to get as far as > > > > pagetable_init() in arch/i386/mm/init.c, then it falls back into the BIOS as > > > > if someone had pressed the reset button. The same kernel boots fine on > > > > 486 and Pentium Systems. > > ..... The last thing I see is > > "Uncompressing Linux... Ok, booting the kernel." I have added some > > quick and dirty debug code that writes messages directly to the VGA > > screen buffer. According to that, execution seems to get as far as the > > statement > > > > *pte = mk_pte_phys(__pa(vaddr), PAGE_KERNEL); > > > > Could it be possible that memory size is being misdetected? Try mem=8M > (or less) on the command line. Try to catch the value of pte when it > crashes.
I tried "mem=4M" -- no effect. The value of pte is 0xc0001000, so it seems to be the first invocation of that statement in the for() loop.
Now comes the amazing (to me) part: I split the above statement up into:
temp = mk_pte_phys(__pa(vaddr), PAGE_KERNEL); *pte = temp;
where temp is declared "volatile pte_t". I inserted test-prints between the above two lines. Accoding to that, the _first_ line , i.e. the evaluation of the mk_pte_phys() macro is causing the crash!
I am still trying to figure out what mk_pte_phys() does. Apparently it involves an access to the kernel's data section. My current guess is that the data section is not correctly mapped at this point. Would that be possible ?
---------------------------------------------------------------- Robert Kaiser email: rkaiser@sysgo.de SYSGO RTS GmbH Am Pfaffenstein 14 phone: (49) 6136 9948-762 D-55270 Klein-Winternheim / Germany fax: (49) 6136 9948-10 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |