cvs commit: src/sys/vm uma_core.c

Brian Fundakowski Feldman green at FreeBSD.org
Sat Jul 3 22:34:40 PDT 2004


On Sun, Jul 04, 2004 at 04:20:27AM +0000, Bosko Milekic wrote:
> 
>   This change is bogus.  It checks uz_name against "Mbuf" but mbuma also
>   defines a "Packet" zone.
> 
>   Even if that were fixed, I would personally prefer a backout.  The
>   original intent of this [temporary] piece of code is to help detect
>   potential deadlocks and make sure that they don't happen, as they are
>   generally tougher to debug than traps on NULL pointer dereferences.
>   The fact that without WITNESS M_WAITOK is actually overriden by
>   M_NOWAIT behavior, although conservative, ensures that deadlock due
>   to, say, locks being held while sleeping.
> 
>   The need for the temporary code is still significant because we still
>   have code paths that could potentially lead to deadlock here.  I'd
>   rather proactively, albeit conservatively, avoid that deadlock, knowing
>   that the situation where even M_NOWAIT will return NULL should not
>   occur unless I have heavy/unexpected load anyway.
> 
>   With that said, I would agree to you adding a way to have badness on
>   0 by default, possibly by making it a debug boot-time tunable, or
>   better, rw-sysctl.

Backing this out is inappropriate -- malloc(WAITOK) may never fail.

Please further correct behavior for mbufs, but don't break malloc/zalloc for
everyone as it was when EVER returning
NULL for WAITOK.

-- 
Brian Fundakowski Feldman                           \'[ FreeBSD ]''''''''''\
  <> green at FreeBSD.org                               \  The Power to Serve! \
 Opinions expressed are my own.                       \,,,,,,,,,,,,,,,,,,,,,,\


More information about the cvs-all mailing list