[SPARC64]: Fix atomic backoff limit.
authorDavid S. Miller <davem@davemloft.net>
Wed, 19 Mar 2008 08:04:48 +0000 (01:04 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Mar 2008 08:04:48 +0000 (01:04 -0700)
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>
include/asm-sparc64/backoff.h

index dadd6c3..fa1fdf6 100644 (file)
@@ -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; \