commit | 50952026036c7b4212b90091bf23a264c0ccc1fb | [log] [tgz] |
---|---|---|
author | Ralf Baechle <ralf@linux-mips.org> | Thu Jul 03 23:28:35 2008 +0100 |
committer | Ralf Baechle <ralf@linux-mips.org> | Fri Jul 04 08:22:15 2008 +0100 |
tree | 50c5865ab0fdc8d4f36a69ddcc86037489a90fa9 | |
parent | bf9127c36341573dc47a9c2fc003dcf13bbbf246 [diff] |
[MIPS] Fix bug in atomic_sub_if_positive. The branch optimization fixes in 2.6.21 introduced a bug in atomic_sub_if_positive that causes it to return even when the sc instruction fails. The result is that e.g. down_trylock becomes unreliable as the semaphore counter is not always decremented. Original MUA-shredded patch from Morten Larsen <mlarsen@broadcom.com>. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>