diff options
author | David S. Miller <davem@davemloft.net> | 2008-03-19 01:04:48 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-03-19 01:04:48 -0700 |
commit | 4cfea5a7dfcc2766251e50ca30271a782d5004ad (patch) | |
tree | f5df867200211659f09a496c39b83ead231c0c81 /include | |
parent | f0e98c387e61de00646be31fab4c2fa0224e1efb (diff) | |
download | talos-op-linux-4cfea5a7dfcc2766251e50ca30271a782d5004ad.tar.gz talos-op-linux-4cfea5a7dfcc2766251e50ca30271a782d5004ad.zip |
[SPARC64]: Fix atomic backoff limit.
4096 will not fit into the immediate field of a compare instruction,
in fact it will end up being -4096 causing the check to fail every
time and thus disabling backoff.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-sparc64/backoff.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/asm-sparc64/backoff.h b/include/asm-sparc64/backoff.h index dadd6c385c6c..fa1fdf67e350 100644 --- a/include/asm-sparc64/backoff.h +++ b/include/asm-sparc64/backoff.h @@ -12,7 +12,8 @@ mov reg, tmp; \ 88: brnz,pt tmp, 88b; \ sub tmp, 1, tmp; \ - cmp reg, BACKOFF_LIMIT; \ + set BACKOFF_LIMIT, tmp; \ + cmp reg, tmp; \ bg,pn %xcc, label; \ nop; \ ba,pt %xcc, label; \ |