Hangs after "Loading" but before "Uncompressing"
Alan Modra
alan en SPRI.Levels.UniSA.Edu.Au
Mie Ene 26 22:19:40 CST 2000
On Wed, 26 Jan 2000, Richard B. Johnson wrote:
> On Wed, 26 Jan 2000, Markley, Todd wrote:
>
> > Dick:
> > I think you are asking me to comment out the `je a20_wait`
> > line in setup.S. I have now tried this and get the same results.
> > The problem system still hangs just before "Uncompressing" and
> > the same kernel boots fine on my laptop.
> >
> Yes. So we know that it's not hung waiting for the alias to disappear.
Actually, when I squint at this bit of code, it look to me like the
problem isn't a potential hang. Rather, it might be possible to exit that
loop too quickly. ie. continue on the boot with A20 still disabled.
Here's the code
a20_wait:
incw %ax # unused memory location <0xfff0
movw %ax, %fs:(0x200) # we use the "int 0x80" vector
cmpw %gs:(0x210), %ax # and its corresponding HMA addr
je a20_wait # loop until no longer aliased
Imagine if %gs:(0x210) happened to be in the cache, and not equal to the
first value of %ax stored - We'd exit the loop immediately. I dunno
whether all PC hardware handles these memory aliasing situations properly.
If not, then we'd exit the loop the second time around if we didn't the
first time.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo en vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
Más información sobre la lista de distribución Ayuda