Subject: Re: deadlock in PowerPC VM system
To: Duncan Missimer <dmissimer@rhapsodynetworks.com>
From: Matt Thomas <matt@3am-software.com>
List: port-powerpc
Date: 12/05/2001 20:29:23
At 06:54 PM 12/5/2001 -0800, Duncan Missimer wrote:
>Anybody else seen this one?
>
> sys__sysctl ->
> kern_sysctl ->
> sysctl_procargs ->
> uvm_io -> # creates kernel mapping
> uiomove ->
> kcopy ->
> bcopy ->
> trap ->
> uvm_fault -> # acquires shared lock for kernel map
> pmap_enter ->
> pmap_enter_pv ->
> pmap_alloc_pv -> # but pv_nfree is 0, so.....
> uvm_km_zalloc (== uvm_km_alloc1) ->
> uvm_map ->
> uvm_map_lock ->
> lockmgr(kernel_map, LK_EXCLUSIVE # hangs forever waiting for above
>shared lock to go away
>
> Note that the WEHOLDIT test under LK_EXCLUSIVE doesn't help because
>it is
> impossible to identify the owner[s] of shared locks.
>
>Got any good ideas? I understand that the kernel is based on current as of
>7/17.
This will not happen with NEWPMAP since it's data
structures are not in the kernel map. Make sure you
use -current source.
--
Matt Thomas Internet: matt@3am-software.com
3am Software Foundry WWW URL: http://www.3am-software.com/bio/matt/
Cupertino, CA Disclaimer: I avow all knowledge of this message