> Date: Wed, 3 Feb 2010 06:10:09 +0100 > From: Ariane van der Steldt <ari...@stack.nl> > > I think it'll only fix the problem partially though: uvm_km_free* > doesn't have a trylock variant and may sleep just as well on the lock.
That's fairly easy to fix though. You can simply save pseg->start in a local variable, relase the lock and call uvm_km_free().