Date: Sat, 06 Sep 1997 20:43:59 -0600 From: Steve Passe <smp@csn.net> To: smp@freebsd.org Cc: current@freebsd.org Subject: FIXED: Fatal trap 12 Message-ID: <199709070243.UAA23614@Ilsa.StevesCafe.com>
next in thread | raw e-mail | index | archive | help
Hi,
John found and fixed the "Fatal trap 12" bug in SMP. It fixes the problem
for both his and my test cases. The fix has been committed to freefall.
For the impatient behind slow mirrors, the patch:
------------------------------------ cut ------------------------------------
*** pmap.c.orig 1997/09/07 01:55:48
--- pmap.c 1997/09/07 01:55:57
***************
*** 1464,1470 ****
pdir_pde(PTD, kernel_vm_end) = (pd_entry_t)
(VM_PAGE_TO_PHYS(nkp
g) | PG_V | PG_RW | pgeflag);
#ifdef SMP
! for (i = 0; i < mp_naps; i++) {
if (IdlePTDS[i])
pdir_pde(IdlePTDS[i], kernel_vm_end) =
(pd_entry
_t) (VM_PAGE_TO_PHYS(nkpg) | PG_V | PG_RW | pgeflag);
}
--- 1464,1470 ----
pdir_pde(PTD, kernel_vm_end) = (pd_entry_t)
(VM_PAGE_TO_PHYS(nkp
g) | PG_V | PG_RW | pgeflag);
#ifdef SMP
! for (i = 0; i < mp_ncpus; i++) {
if (IdlePTDS[i])
pdir_pde(IdlePTDS[i], kernel_vm_end) =
(pd_entry
_t) (VM_PAGE_TO_PHYS(nkpg) | PG_V | PG_RW | pgeflag);
}
------------------------------------ cut ------------------------------------
--
Steve Passe | powered by
smp@csn.net | Symmetric MultiProcessor FreeBSD
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199709070243.UAA23614>
