:I should have guessed the reason. Matthew Dillon answered this question on
:Fri, 2 Jun 2000 as follows:
:
:
: The VM routines that manage pages associated with objects are not
: protected against interrupts, so interrupts aren't allowed to change
: page-object associations. Otherwise an interrupt at just the wrong
: time could corrupt the mainline kernel VM code.
:
:
:On Thu, 2 Aug 2001, Zhihui Zhang wrote:
:
:>
:> FreeBSD can not allocate from the PQ_CACHE queue in an interrupt context.
:> Can anyone explain it to me why this is the case?
:>
:>
:> Thanks,
Yes, that is precisely the reason. In -current this all changes, though,
since interrupts are now threads. *But*, that said, interrupts cannot
really afford to hold mutexes that might end up blocking them for
long periods of time so I would still recommend that interrupt code not
attempt to allocate pages out of PQ_CACHE.
-Matt
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message