Don't wait for memory from pool while holding vm_map_lock or we can deadlock ourselves - based on an infrequent hang caught by sthen, and diagnosed by kettenis and me. Fix after some iterations is to simply call uvm_map_allocate and allocate the map entry before grabbing the lock so we don't wait while holding the lock. ok miod@ kettenis@
Don't wait for memory from pool while holding vm_map_lock or we can
deadlock ourselves - based on an infrequent hang caught by sthen, and
diagnosed by kettenis and me. Fix after some iterations is to simply
call uvm_map_allocate and allocate the map entry before grabbing the
lock so we don't wait while holding the lock.
ok miod@ kettenis@

orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars