lkml.org 
[lkml]   [2000]   [Jul]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: why is trampoline.S code copied for each cpu?
Thank you James for answering my question fully and correctly. Thanks to
Philipp for useful comments also.

Regards,
Tigran
On Wed, 12 Jul 2000, James Bottomley wrote:

> prumpf@uzix.org said:
> > No. phys_to_virt(8192) != trampoline_base, at least in the general
> > case.
>
> > It really looks like the code in smpboot.c is out of date to me.
>
> Actually, it is, look at how the memory init sequence goes. There are only
> two other pages allocated before you get to smp_alloc_memory(). Here's the
> proof (putting a printk into setup_trampoline()).
>
> CPU0: Intel Pentium Pro stepping 07
> calibrating APIC timer ...
> ..... CPU clock speed is 198.9541 MHz.
> ..... system bus clock speed is 66.3177 MHz.
> trampoline base = (virt) c0002000, (phys) 8192
> Booting processor 1 eip 2000
> Calibrating delay loop... 397.31 BogoMIPS
> [...]
>
> I do agree the test lower down should be updated to use trampoline_base
> instead of phys_to_virt(8192).
>
> > This doesn't seem to happen in practice. If it does, we probably want
> > to panic() anyway - we now have a random CPU executing random code but
> > not behaving as expected.
>
> It doesn't happen in the normal course of events. For those of us who play
> with SMP HAL's, having this type of information can be invaluable. Also,
> getting the machine to boot so you can try to find out what happened to the
> errant CPU is useful. Usually it is just stuck somewhere like the message
> implies.
>
> James
>
>
>


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:57    [W:0.048 / U:0.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site