freedreno: Fix batch flush race condition
followup to !11196 (merged) .. I believe this is the root cause
We need to remove the batch cache entry before marking as flushed.
Note that we are already holding the batch lock, to prevent flushing something that another context is emitting cmdstream to, but there is a window between batch cache lookup (under screen lock) and acquiring the batch lock that could previously result in batch cache lookup returning a flushed batch.