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>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45C0BDAC.4070306>