diff options
| author | rsc <rsc> | 2007-11-28 20:17:04 +0000 | 
|---|---|---|
| committer | rsc <rsc> | 2007-11-28 20:17:04 +0000 | 
| commit | a6c4711a38d3f8f3a4737558a4682ea38fcfaa7a (patch) | |
| tree | dd1818cb6a9dbb5e1d2af267b38de2a60fc07b50 | |
| parent | fd6b029401e359ce25cf0c3d8c0f047b2e2a5632 (diff) | |
| download | xv6-labs-a6c4711a38d3f8f3a4737558a4682ea38fcfaa7a.tar.gz xv6-labs-a6c4711a38d3f8f3a4737558a4682ea38fcfaa7a.tar.bz2 xv6-labs-a6c4711a38d3f8f3a4737558a4682ea38fcfaa7a.zip  | |
bda[0xE] is a 16-bit segment number,
not a real address.  So shift 4.
Reported by Silas.
Jim McKie says this code only matters
on ancient EISA MP systems.
| -rw-r--r-- | mp.c | 2 | 
1 files changed, 1 insertions, 1 deletions
@@ -59,7 +59,7 @@ mp_search(void)    struct mp *mp;    bda = (uchar*)0x400; -  if((p = (bda[0x0F]<<8)|bda[0x0E])){ +  if((p = ((bda[0x0F]<<8)|bda[0x0E]) << 4)){      if((mp = mp_search1((uchar*)p, 1024)))        return mp;    } else {  | 
