Fixes nasty CAS bug
authorBarret Rhoden <brho@cs.berkeley.edu>
Tue, 17 May 2011 21:40:57 +0000 (14:40 -0700)
committerKevin Klues <klueska@cs.berkeley.edu>
Thu, 3 Nov 2011 00:36:03 +0000 (17:36 -0700)
commita15e3ec5f3eca9fe6ba5bf250e41dd7c1a9ff783
tree1156deb328f7f303756fef6cfc3c97d75f1a9f72
parent2ca91e575e207b6a86228a672df26dfc803e8151
Fixes nasty CAS bug

This one would only show up if you had enough contention to cause CAS to
fail, at which point eax was clobbered, and if the number you were
working on was > 255, such as when you have 300-500 kthreads.  Goddamn.
kern/arch/i686/atomic.h
kern/src/testing.c
tests/block_test.c
user/parlib/include/i686/atomic.h