cvs commit: src/sys/dev/mxge if_mxge.c

Scott Long 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.
> 
> Scott
> 

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.

Scott



More information about the cvs-src mailing list