summaryrefslogtreecommitdiffstats
path: root/include/asm-generic
diff options
context:
space:
mode:
authorJoshua Kinard2012-06-25 03:01:34 +0200
committerRalf Baechle2012-10-11 11:02:36 +0200
commitb4f2a17ba96a79f1069a2c0f1c648cf6d497f2f3 (patch)
tree75f44d8efb4748d9639869dc7089533b0964b037 /include/asm-generic
parentMerge branch 'i2c-embedded/for-next' of git://git.pengutronix.de/git/wsa/linux (diff)
downloadkernel-qcow2-linux-b4f2a17ba96a79f1069a2c0f1c648cf6d497f2f3.tar.gz
kernel-qcow2-linux-b4f2a17ba96a79f1069a2c0f1c648cf6d497f2f3.tar.xz
kernel-qcow2-linux-b4f2a17ba96a79f1069a2c0f1c648cf6d497f2f3.zip
Improve atomic.h robustness
I've maintained this patch, originally from Thiemo Seufer in 2004, for a really long time, but I think it's time for it to get a look at for possible inclusion. I have had no problems with it across various SGI systems over the years. To quote the post here: http://www.linux-mips.org/archives/linux-mips/2004-12/msg00000.html "the atomic functions use so far memory references for the inline assembler to access the semaphore. This can lead to additional instructions in the ll/sc loop, because newer compilers don't expand the memory reference any more but leave it to the assembler. The appended patch uses registers instead, and makes the ll/sc arguments more explicit. In some cases it will lead also to better register scheduling because the register isn't bound to an output any more." Signed-off-by: Joshua Kinard <kumba@gentoo.org> Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/4029/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include/asm-generic')
0 files changed, 0 insertions, 0 deletions