uClibc-0.9.29-fix-inverted-login-in-compare_and_swap-in-linuxthreads.patch 972 B

12345678910111213141516171819202122232425262728
  1. From: Haavard Skinnemoen <hskinnemoen@atmel.com>
  2. Date: Wed, 19 Sep 2007 10:03:36 +0200
  3. Subject: [Avr-gnu-toolchain] [uClibc PATCH] Fix inverted logic in
  4. __compare_and_swap in linuxthreads.old
  5. If the old value equals the value in memory, the result should be
  6. TRUE, not FALSE.
  7. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
  8. ---
  9. .../linuxthreads.old/sysdeps/avr32/pt-machine.h | 2 +-
  10. 1 files changed, 1 insertions(+), 1 deletions(-)
  11. diff --git a/libpthread/linuxthreads.old/sysdeps/avr32/pt-machine.h b/libpthread/linuxthreads.old/sysdeps/avr32/pt-machine.h
  12. index 2e8a33b..eccf329 100644
  13. --- a/libpthread/linuxthreads.old/sysdeps/avr32/pt-machine.h
  14. +++ b/libpthread/linuxthreads.old/sysdeps/avr32/pt-machine.h
  15. @@ -67,7 +67,7 @@ __compare_and_swap(long int *p, long int oldval, long int newval)
  16. : "m"(*p), [new] "r"(newval), [old] "r"(oldval)
  17. : "cc", "memory");
  18. - return result;
  19. + return result == 0;
  20. }
  21. #endif /* pt-machine.h */
  22. --
  23. 1.5.3.1