PERFORCE change 62364 for review
Peter Wemm
peter at FreeBSD.org
Tue Sep 28 17:27:23 PDT 2004
http://perforce.freebsd.org/chv.cgi?CH=62364
Change 62364 by peter at peter_daintree on 2004/09/29 00:26:55
Integ -I -b i386_hammer (mp_machdep pmap_invalidate fix etc)
Affected files ...
.. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#73 integrate
.. //depot/projects/hammer/sys/amd64/amd64/mptable.c#31 integrate
.. //depot/projects/hammer/sys/amd64/amd64/pmap.c#109 integrate
Differences ...
==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#73 (text+ko) ====
@@ -539,12 +539,14 @@
u_int32_t mpbioswarmvec;
int apic_id, cpu, i;
u_int64_t *pt4, *pt3, *pt2;
+ vm_offset_t va = boot_address + KERNBASE;
mtx_init(&ap_boot_mtx, "ap boot", NULL, MTX_SPIN);
/* install the AP 1st level boot code */
- pmap_kenter(boot_address + KERNBASE, boot_address);
- bcopy(mptramp_start, (void *)((uintptr_t)boot_address + KERNBASE), bootMP_size);
+ pmap_kenter(va, boot_address);
+ pmap_invalidate_page(kernel_pmap, va);
+ bcopy(mptramp_start, (void *)va, bootMP_size);
/* Locate the page tables, they'll be below the trampoline */
pt4 = (u_int64_t *)(uintptr_t)(mptramp_pagetables + KERNBASE);
==== //depot/projects/hammer/sys/amd64/amd64/mptable.c#31 (text+ko) ====
@@ -928,7 +928,9 @@
if (args->vector == vector)
return;
KASSERT(args->vector == -1,
- ("Multiple entries for PCI IRQ %d", args->vector));
+ ("Multiple IRQs for PCI interrupt %d.%d.INT%c: %d and %d\n",
+ args->bus, args->irq >> 2, 'A' + (args->irq & 0x3), args->vector,
+ vector));
args->vector = vector;
}
==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#109 (text+ko) ====
More information about the p4-projects
mailing list