Ticket #9065 (closed Bugs: fixed)
[interprocess] atomic_cas32 inline assembly wrong on ppc32
|Reported by:||Petr Machata <pmachata@…>||Owned by:||igaztanaga|
|Milestone:||To Be Determined||Component:||interprocess|
This shows itself as a number of failures in test suite, some of which include test cases spinning infinitely. The problem (as discovered by Jaroslav Škarvada and reported in Red Hat bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=1002578 ) is in inline assembly in atomic_cas32. The comparison is done against "with" and the new value is "cmp". The attached patch swaps the order of arguments passed to the inline assembly block so that they match the order of incoming function arguments, which fixes the problem.