Re: [PATCH 3/3] WorkStruct: Use direct assignment rather thancmpxchg()

From: James Bottomley
Date: Thu Dec 07 2006 - 16:07:52 EST


On Thu, 2006-12-07 at 20:06 +0000, David Howells wrote:
> Remember: if you have to put a conditional jump in there, it's going to fail
> one way or the other a certain percentage of the time, and that's going to
> cause a pipeline stall, and these ops are used quite a lot.

That we'd have to put a conditional jump in there is an incorrect
assumption on risc machines. At least on parisc we can do conditional
nullifies in the executing instruction pipeline, so we'd read, nullify
the following write if the bit were set. We do this a lot in our page
interruption handlers.

James


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