Re: [PATCH 2/4] x86-64: Calgary IOMMU - move valid_dma_directioninto the callers

From: Jeff Garzik
Date: Thu May 25 2006 - 05:58:35 EST


Muli Ben-Yehuda wrote:
On Thu, May 25, 2006 at 12:35:07AM -0400, Jeff Garzik wrote:
Jon Mason wrote:
>From Andi Kleen's comments on the original Calgary patch, move
valid_dma_direction into the calling functions.

Signed-off-by: Muli Ben-Yehuda <muli@xxxxxxxxxx>
Signed-off-by: Jon Mason <jdmason@xxxxxxxxxx>
Even though BUG_ON() includes unlikely(), this introduces additional tests in very hot paths.

Are they really very hot? I mean if you're calling the DMA API, you're
about to frob the hardware or have already frobbed it - does this
check really matter?

When you are adding a check that will _never_ be hit in production, to the _hottest_ paths in the kernel, you can be assured it matters...


_Why_ do we need this at all?

It was helpful for us during the dma-ops work and Calgary bringup and
Andi requested that we move it from Calgary to common code. I think
we're fine with dropping it if that's the consensus, but it did catch
a few bugs early on and the cost is tiny.

Key phrase: "early on"

These checks will only be useful during _early_ development of a new DMA platform. For _100%_ of the real world users, these checks are useless. Not 99%, 100%.

Jeff



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/