Re: [PATCH]: Fix SMP-reordering race in mark_buffer_dirty

From: Linus Torvalds
Date: Wed Apr 02 2008 - 18:52:59 EST




On Thu, 3 Apr 2008, Mikulas Patocka wrote:
>
> When I added memory reads around mfence, the combined result was worse
> than the sum of reads and mfence --- mfence alone 8 ticks, mfence+4reads
> 18 ticks.

Sorry, my test-program was buggy.

> mfence+writes scales linearly, i.e. mfence + 4 writes does 12 ticks.

I get different results now that I fixed my memop test. I get a loop with
reads and writes taking 3 cycles without mfence, and 21 cycles with (read
after, write before).

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