This is based on @bilboed flushless branch, only removing the last commit that introduces the non flushing seeks scenario.