Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
hash: Dropping an objcore does not rush the waiting list
Rushing the waiting list because an objcore was dropped is a source of spurious wakeups and in the case where the dropped objcore was not attached to a busyobj, a guarantee to wake up rush_exponent tasks from the head of the waiting list to have them back soon after at the tail. Assertions are now ensuring that only "un-busied" objcores are dropped or rushed. With the removal of spurious wake ups also goes the removal of useful opportunistic rushes. For cacheable objects this is solved by waking up all requests.
- Loading branch information