Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Apr 2010 15:33:52 +0100
From:      Rui Paulo <rpaulo@FreeBSD.org>
To:        Sam Leffler <sam@errno.com>
Cc:        svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: svn commit: r206419 - head/sys/net80211
Message-ID:  <256D847F-E64D-4802-8266-C2AC4DCDFF72@FreeBSD.org>
In-Reply-To: <4BC250CF.30600@errno.com>
References:  <201004091206.o39C6JBo046371@svn.freebsd.org> <4BC250CF.30600@errno.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 11 Apr 2010, at 23:44, Sam Leffler wrote:

> Rui Paulo wrote:
>> Author: rpaulo
>> Date: Fri Apr  9 12:06:19 2010
>> New Revision: 206419
>> URL: http://svn.freebsd.org/changeset/base/206419
>> Log:
>>  Use M_NOWAIT instead of M_WAITOK to avoid race conditions.
>> =20
>=20
> Can you describe these race conditions (or at least one of them)?

Some drivers call ratectl functions with locks held. I saw similar =
allocations in the net80211 stack that used M_NOWAIT and printed an =
error if the allocation failed, but didn't notify the caller (for =
example ieee80211_node_table_init()).

If I use M_WAITOK here I'll also get WITNESS warnings.

Regards,
--
Rui Paulo




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?256D847F-E64D-4802-8266-C2AC4DCDFF72>