Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Mar 2008 09:47:29 -0700
From:      Sam Leffler <sam@freebsd.org>
To:        Ruslan Ermilov <ru@freebsd.org>
Cc:        arch@freebsd.org
Subject:   Re: Disposal of a misleading M_TRYWAIT
Message-ID:  <47E689A1.1050203@freebsd.org>
In-Reply-To: <20080323090823.GA37326@team.vega.ru>
References:  <20080322105145.GA41672@team.vega.ru> <20080322135637.Y6961@fledge.watson.org> <200803230104.m2N14xlf026184@apollo.backplane.com> <20080322153658.K910@desktop> <47E5D613.4060005@freebsd.org> <20080323090823.GA37326@team.vega.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Ruslan Ermilov wrote:
> On Sat, Mar 22, 2008 at 09:01:23PM -0700, Sam Leffler wrote:
>   
>> We made a decision a while back to not use malloc flags for mbuf routine 
>> arguments.
>>     
>
> While I can see the point in this (if we ever change the
> mbuf allocator from UMA to something else), like I said
> in my email, a lot of code already uses malloc flags for
> this.
>
>   
>> There are even assertions to verify it.
>>     
>
> I think this was OBE, now mbuf.h says:
>
> : /*
> :  * Flags specifying how an allocation should be made.
> :  *
> :  * The flag to use is as follows:
> :  * - M_DONTWAIT or M_NOWAIT from an interrupt handler to not block allocation.
> :  * - M_WAIT or M_WAITOK from wherever it is safe to block.
> :  *
> :  * M_DONTWAIT/M_NOWAIT means that we will not block the thread explicitly and
> :  * if we cannot allocate immediately we may return NULL, whereas
> :  * M_WAIT/M_WAITOK means that if we cannot allocate resources we
> :  * will block until they are available, and thus never return NULL.
> :  *
> :  * XXX Eventually just phase this out to use M_WAITOK/M_NOWAIT.
> :  */
> : #define MBTOM(how)      (how)
> : #define M_DONTWAIT      M_NOWAIT
> : #define M_TRYWAIT       M_WAITOK
> : #define M_WAIT          M_WAITOK
>
>   

Yes, looks like someone broke it.  Hence the confusion/pollution reappeared.

The original suggestion was to purge M_TRYWAIT which was fine with me.  
If someone wants to sweep the tree and rename everything I'm not going 
to argue but it makes diffs against old code noisier and (as I said) for 
little gain.

    Sam



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