Date: Wed, 31 Jan 2007 09:02:52 -0700 From: Scott Long <scottl@samsco.org> To: Andrew Gallatin <gallatin@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/mxge if_mxge.c Message-ID: <45C0BDAC.4070306@samsco.org> In-Reply-To: <45C0BC2F.9060303@samsco.org> References: <200701311547.l0VFliLC039432@repoman.freebsd.org> <45C0BC2F.9060303@samsco.org>
index | next in thread | previous in thread | raw e-mail
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. Scotthome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45C0BDAC.4070306>
