Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 Mar 2008 13:57:38 +0000 (GMT)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        Ruslan Ermilov <ru@FreeBSD.org>
Cc:        arch@FreeBSD.org
Subject:   Re: Disposal of a misleading M_TRYWAIT
Message-ID:  <20080322135637.Y6961@fledge.watson.org>
In-Reply-To: <20080322105145.GA41672@team.vega.ru>
References:  <20080322105145.GA41672@team.vega.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 22 Mar 2008, Ruslan Ermilov wrote:

> I'd like to remove the misleading uses of M_TRYWAIT throughout the tree and 
> clean up some dead code that assumes its original behavior (that it could 
> return NULL).
>
> Since the advent of MBUMA in FreeBSD (whatever), M_TRYWAIT has meant 
> M_WAITOK.  (The reason for M_TRYWAIT itself was that an original mbuf's 
> M_WAIT could return NULL.)
>
> There is little or no sign that this will change, and there are lots of 
> consumers that already pass M_WAITOK to mbuf allocator routines and rely on 
> its invariants, so support for the concept of M_TRYWAIT has rotted and would 
> have to be re-written anyway if reintroduced.
>
> http://people.freebsd.org/~ru/patches/M_TRYWAIT.patch

This seems reasonable to me for exactly the reasons you stte.  We might 
simultaneously want to complete the M_DONTWAIT -> M_NOWAIT conversion.  And 
you can then remove the XXX comment in mbuf.h about phasing out M_TRYWAIT and 
M_DONTWAIT.  :-)

Robert N M Watson
Computer Laboratory
University of Cambridge



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080322135637.Y6961>