On Fri, 2005-May-20 15:56:15 -0700, Don Lewis wrote:
>On 21 May, Peter Jeremy wrote:
>> On Fri, 2005-May-20 21:51:34 +0200, Hans Petter Selasky wrote:
>
>>>Can anyone explain why "uiomove()" has to sleep, and why there is no 
>>>non-blocking "uiomove()"?
>> 
>> As far as I can see, uiomove() only sleeps if it is asked to do a
>> kernel<->userland move that takes more than twice a scheduler quantum.
>> As long as you don't uiomove() ridiculous amounts of data, it should
>> never sleep.
>
>It can also sleep if it stumbles across a userland page that isn't
>resident.  When this happens, it will sleep until the page is retrieved
>from swap.

Mea culpa.  I thought pcb_onfault was invoked in lieu of paging but
it's actually invoked after the pager has tried to bring the page in.

-- 
Peter Jeremy
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to