xv6

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 44eeb7383c50634972ec5998b702256830fff02b
parent 07a6397e8cac8687fd9926355e880455e382338d
Author: Brian Swetland <swetland@frotz.net>
Date:   Thu,  2 Jan 2014 19:27:24 -0800

fix mp structures to be 64bit safe

The embedded pointer types caused them to grow in the 64bit build.
Switch them over to 32bit integers so the structures remain correct.

Diffstat:
Minclude/mp.h | 8++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/include/mp.h b/include/mp.h @@ -2,7 +2,7 @@ struct mp { // floating pointer uchar signature[4]; // "_MP_" - void *physaddr; // phys addr of MP config table + uint physaddr; // phys addr of MP config table uchar length; // 1 uchar specrev; // [14] uchar checksum; // all bytes must add up to 0 @@ -17,10 +17,10 @@ struct mpconf { // configuration table header uchar version; // [14] uchar checksum; // all bytes must add up to 0 uchar product[20]; // product id - uint *oemtable; // OEM table pointer + uint oemtable; // OEM table pointer ushort oemlength; // OEM table length ushort entry; // entry count - uint *lapicaddr; // address of local APIC + uint lapicaddr; // address of local APIC ushort xlength; // extended table length uchar xchecksum; // extended table checksum uchar reserved; @@ -42,7 +42,7 @@ struct mpioapic { // I/O APIC table entry uchar apicno; // I/O APIC id uchar version; // I/O APIC version uchar flags; // I/O APIC flags - uint *addr; // I/O APIC address + uint addr; // I/O APIC address }; // Table entry types