malloc(M_WAITOK) of"Mbuf",forcing M_NOWAIT ......

Robert Watson rwatson at
Tue Jun 1 16:44:50 PDT 2004

On Tue, 1 Jun 2004, Bosko Milekic wrote:

>   The current interim solution, which I committed with mbuma,
>   forces all UMA allocations for the moment to occur with
>   M_NOWAIT unless WITNESS is available and we know for a fact
>   that we're not holding any locks other than Giant.  This is
>   not a permanent solution.

Per our discussions, the fix is "Don't do that", and in general I think
there are only a few cases where we have this problem.  I had some patches
for the NFS code in question from last time I put a WITNESS warning in
mballoc(), I'll see if I can dig them up.  There are also some cases where
mbuf allocation is assumed not to fail and we need to make sure the code
handles that better (generally also in NFS).

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert at      Senior Research Scientist, McAfee Research

> -Bosko
> You wrote:
> >I get lots of these messages on my console with a recent -CURRENT,
> >is this something known?
> >
> >----------------------------------------------------------------
> >malloc(M_WAITOK) of "Mbuf", forcing M_NOWAIT with the following
> >non-sleepable locks held:
> >exclusive sleep mutex inp (rawinp) r = 0 (0xc2076090) locked @
> _______________________________________________
> freebsd-current at mailing list
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at"

More information about the freebsd-current mailing list