Source-Changes-D archive

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

Re: CVS commit: src/sys/arch/m68k



hi,

is a nointr pool safe for this pmap?
iirc x86 pmap allocates pv entries from kmem_map to avoid this kind of
recursion.

YAMAMOTO Takashi

> Module Name:  src
> Committed By: tsutsui
> Date:         Sat Oct 29 18:26:20 UTC 2011
> 
> Modified Files:
>       src/sys/arch/m68k/include: pmap_motorola.h
>       src/sys/arch/m68k/m68k: pmap_motorola.c
> 
> Log Message:
> Use pool(9) for struct pv_entry allocations rather than
> uvm_km_alloc(9)/uvm_km_free(9) and ancient homegrown pv_page_info structures.
> 
> Calling uvm_km_free(9) during pmap_remove(9) could cause rw_lock error
> in uvm_unmap1() as noted in PR port-m68k/45519.
> 
> NetBSD/x68k (both real X68030 and XM6i emulator) still gets weird panic
> (corrupted kernel stack pointer?) on some heavy load:
> ---
> panic: MMU fault
> Stopped in pid 363.1 (X68k) at  netbsd:cpu_Debugger+0x6:      unlk    a6
> db> tr
> cpu_Debugger(4012004,8,1cbb528,2a618e0,2a5b000) + 6
> db>
> ---
> but it also occurs without this change so there might be some more bugs
> in m68k pmap...
> 
> 
> To generate a diff of this commit:
> cvs rdiff -u -r1.33 -r1.34 src/sys/arch/m68k/include/pmap_motorola.h
> cvs rdiff -u -r1.62 -r1.63 src/sys/arch/m68k/m68k/pmap_motorola.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