diff options
| author | Luoqi Chen <luoqi@FreeBSD.org> | 2000-04-20 14:40:11 +0000 |
|---|---|---|
| committer | Luoqi Chen <luoqi@FreeBSD.org> | 2000-04-20 14:40:11 +0000 |
| commit | c71d5570342e7e4967ff6ac9d98f07212ae38b85 (patch) | |
| tree | 9f7e2cec6866320e1fd9319b89be83ed82d1d17d /sys | |
| parent | 0111d086294f5da46306fcde039714488836024c (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/amd64/amd64/pmap.c | 8 | ||||
| -rw-r--r-- | sys/i386/i386/pmap.c | 8 |
2 files changed, 10 insertions, 6 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 6f87229c0b5d..a0ef61a00d59 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -426,9 +426,10 @@ pmap_bootstrap(firstaddr, loadaddr) for (j = 0; j < mp_napics; j++) { /* same page frame as a previous IO apic? */ if (((vm_offset_t)SMPpt[NPTEPG-2-j] & PG_FRAME) == - (io_apic_address[0] & PG_FRAME)) { + (io_apic_address[i] & PG_FRAME)) { ioapic[i] = (ioapic_t *)((u_int)SMP_prvspace - + (NPTEPG-2-j)*PAGE_SIZE); + + (NPTEPG-2-j) * PAGE_SIZE + + (io_apic_address[i] & PAGE_MASK)); break; } /* use this slot if available */ @@ -436,7 +437,8 @@ pmap_bootstrap(firstaddr, loadaddr) SMPpt[NPTEPG-2-j] = (pt_entry_t)(PG_V | PG_RW | pgeflag | (io_apic_address[i] & PG_FRAME)); ioapic[i] = (ioapic_t *)((u_int)SMP_prvspace - + (NPTEPG-2-j)*PAGE_SIZE); + + (NPTEPG-2-j) * PAGE_SIZE + + (io_apic_address[i] & PAGE_MASK)); break; } } diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c index 6f87229c0b5d..a0ef61a00d59 100644 --- a/sys/i386/i386/pmap.c +++ b/sys/i386/i386/pmap.c @@ -426,9 +426,10 @@ pmap_bootstrap(firstaddr, loadaddr) for (j = 0; j < mp_napics; j++) { /* same page frame as a previous IO apic? */ if (((vm_offset_t)SMPpt[NPTEPG-2-j] & PG_FRAME) == - (io_apic_address[0] & PG_FRAME)) { + (io_apic_address[i] & PG_FRAME)) { ioapic[i] = (ioapic_t *)((u_int)SMP_prvspace - + (NPTEPG-2-j)*PAGE_SIZE); + + (NPTEPG-2-j) * PAGE_SIZE + + (io_apic_address[i] & PAGE_MASK)); break; } /* use this slot if available */ @@ -436,7 +437,8 @@ pmap_bootstrap(firstaddr, loadaddr) SMPpt[NPTEPG-2-j] = (pt_entry_t)(PG_V | PG_RW | pgeflag | (io_apic_address[i] & PG_FRAME)); ioapic[i] = (ioapic_t *)((u_int)SMP_prvspace - + (NPTEPG-2-j)*PAGE_SIZE); + + (NPTEPG-2-j) * PAGE_SIZE + + (io_apic_address[i] & PAGE_MASK)); break; } } |
