cvs commit: src/sys/dev/mxge if_mxge.c
scottl at samsco.org
Wed Jan 31 16:03:11 UTC 2007
Scott Long wrote:
> Andrew Gallatin wrote:
>> gallatin 2007-01-31 15:47:44 UTC
>> FreeBSD src repository
>> Modified files:
>> sys/dev/mxge if_mxge.c Log:
>> destroy busdma maps even if they are NULL, so as to avoid leaking
>> busdma tags.
>> Revision Changes Path
>> 1.19 +16 -18 src/sys/dev/mxge/if_mxge.c
> Yeah, I can't stress enough that busdma maps are opaque handles and
> should always be handled like they are valid. It's only an
> implementation detail that they are often NULL on i386 and amd64.
Oh, I forgot to add that it's my intention to make them no longer be
NULL on any platform. They need to hold the S/G list during a load
operation; right now that list is stored in the tag, which in effect
serializes drivers on whatever lock is protecting the tag. It also
makes compound load operations more fragile. I just need to audit
every single driver in the tree to make sure that there aren't
assumptions being made about the map evaluating to NULL.
More information about the cvs-src