commit | d4e6a992ad3b08585cbe50b7b55d23833ad32727 | [log] [tgz] |
---|---|---|
author | Hans Boehm <hboehm@google.com> | Mon Jul 13 10:49:13 2020 -0700 |
committer | Hans Boehm <hboehm@google.com> | Mon Jul 13 10:49:13 2020 -0700 |
tree | ca161920b122403ca36ca323529ecc5ca5824ab1 | |
parent | ea54b823a3a02f65c865e11bbbccb327a273c039 [diff] |
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 oversight. Bug: 161005897 Test: Treehugger Change-Id: Ie98ad188d0edbd9d9359954efa08d03e833f167b