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 /mp.c | |
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.
Diffstat (limited to 'mp.c')
-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 { |