When stuck in eviction, re-check if a thread should be in "busy" mode.  Be consistent about the eviction target: when on an API boundary, wait until there is 5% cache available.