Re: [PATCH] Documentation DMA-API-HOWTO.txt Add dma mapping errorcheck usage examples

From: Shuah Khan
Date: Thu Oct 18 2012 - 10:30:56 EST


On Thu, 2012-10-18 at 12:13 +0200, Michael Kerrisk (man-pages) wrote:
> On Thu, Oct 18, 2012 at 11:47 AM, Dan Carpenter
> <dan.carpenter@xxxxxxxxxx> wrote:
> > On Sun, Oct 14, 2012 at 09:54:24AM -0600, Shuah Khan wrote:
> >> diff --git a/Documentation/DMA-API-HOWTO.txt b/Documentation/DMA-API-HOWTO.txt
> >> index a0b6250..cf1adb4 100644
> >> --- a/Documentation/DMA-API-HOWTO.txt
> >> +++ b/Documentation/DMA-API-HOWTO.txt
> >> @@ -468,11 +468,46 @@ To map a single region, you do:
> >> size_t size = buffer->len;
> >>
> >> dma_handle = dma_map_single(dev, addr, size, direction);
> >> + if (unlikely(dma_mapping_error(dma_handle))) {
> >
> > Don't encourage people to put unlikely() and likely() into their
> > driver code. It should only be used after benchmarking both with
> > and without. I can't imagine how it would make a measurable
> > difference here.
>
> (Hi Dan)
>
> Quite. See http://blog.man7.org/2012/10/how-much-do-builtinexpect-likely-and.html
>
> I wonder how many blind uses of likely() and unlikely() in the kernel
> are actually degrading performance.
>
> Cheers,
>
> Michael


Dan, Michael,

Thanks. I see unlikely() and likely() used widely and didn't realize the
negatives of it. Will fix the examples without the use of unlikely() and
send v2 patch.

Thanks,
-- Shuah


--
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/