Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: syssrc/sys/arch



Module Name:    syssrc
Committed By:   thorpej
Date:           Fri Feb 22 04:49:22 UTC 2002

Modified Files:
        syssrc/sys/arch/acorn32/acorn32: rpc_machdep.c
        syssrc/sys/arch/arm/arm32: pmap.c
        syssrc/sys/arch/cats/cats: cats_machdep.c
        syssrc/sys/arch/evbarm/integrator: integrator_machdep.c
        syssrc/sys/arch/evbarm/iq80310: iq80310_machdep.c
        syssrc/sys/arch/hpcarm/hpcarm: hpc_machdep.c
        syssrc/sys/arch/netwinder/netwinder: netwinder_machdep.c
        syssrc/sys/arch/shark/ofw: ofw.c

Log Message:
Change pmap_map_entry() to work like pmap_map_chunk(): take a pointer
to the L1 table and a virtual address, and no pointer to the L2 table.
The L2 table will be looked up by pmap_map_entry(), which will panic
if the there is no L2 table for the requested VA.

NOTE: IT IS EXTREMELY IMPORTANT THAT THE CORRECT VIRTUAL ADDRESS
BE PROVIDED TO pmap_map_entry()!  Notably, the code that mapped
the kernel L2 tables into the kernel PT mapping L2 table were not
passing actual virtual addresses, but rather offsets into the range
mapped by the L2 table.  I have fixed up all of these call sites,
and tested the resulting kernel on both an IQ80310 and a Shark.
Other portmasters should examine their pmap_map_entry() calls if
their new kernels fail.


To generate a diff of this commit:
cvs rdiff -r1.22 -r1.23 syssrc/sys/arch/acorn32/acorn32/rpc_machdep.c
cvs rdiff -r1.46 -r1.47 syssrc/sys/arch/arm/arm32/pmap.c
cvs rdiff -r1.21 -r1.22 syssrc/sys/arch/cats/cats/cats_machdep.c
cvs rdiff -r1.14 -r1.15 \
    syssrc/sys/arch/evbarm/integrator/integrator_machdep.c
cvs rdiff -r1.27 -r1.28 syssrc/sys/arch/evbarm/iq80310/iq80310_machdep.c
cvs rdiff -r1.33 -r1.34 syssrc/sys/arch/hpcarm/hpcarm/hpc_machdep.c
cvs rdiff -r1.21 -r1.22 \
    syssrc/sys/arch/netwinder/netwinder/netwinder_machdep.c
cvs rdiff -r1.6 -r1.7 syssrc/sys/arch/shark/ofw/ofw.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index