currently buffers are moved from discard to free only in PRESENT_FLIP (FrameMove). I think we need to do this regardless of state of presentstep in order not to starve after discard, right?