Invoke futex wait with correct value

If we were woken up early, Mutex::ExclusiveLock() would mistakenly
retry the wait with the original state_and_contenders value,
in spite of the fact that the contenders part might have changed.
This could turn a mutex wait loop into a spin loop, causing
a battery issue, and an occasional livelock issue. Fix that

Bug: 161005897
Test: Treehugger
Change-Id: Ie98ad188d0edbd9d9359954efa08d03e833f167b
Merged-In: Ie98ad188d0edbd9d9359954efa08d03e833f167b
(cherry picked from commit d4e6a992ad3b08585cbe50b7b55d23833ad32727)
1 file changed