[Intel-gfx] [PATCH] drm/i915: Replace has_bsd/blt/vebox with a mask
Chris Wilson
chris at chris-wilson.co.uk
Tue Oct 15 10:50:39 CEST 2013
On Mon, Oct 14, 2013 at 08:46:22PM -0700, Ben Widawsky wrote:
> -cleanup_vebox_ring:
> - intel_cleanup_ring_buffer(&dev_priv->ring[VECS]);
> -cleanup_blt_ring:
> - intel_cleanup_ring_buffer(&dev_priv->ring[BCS]);
> -cleanup_bsd_ring:
> - intel_cleanup_ring_buffer(&dev_priv->ring[VCS]);
> -cleanup_render_ring:
> - intel_cleanup_ring_buffer(&dev_priv->ring[RCS]);
> +cleanup:
> + for_each_ring(ring, dev_priv, i) {
> + if (!(INTEL_INFO(dev)->ring_mask & (1<<i)) ||
> + !ring->name)
> + continue;
This looks dubious. You don't need to check ring_mask here as that will
be implicit in whatever we test for completeness. ring->name is set at
the start of initialisation and is not cleaned upon error. A better
choice is ring->obj, which we already check in
intel_cleanup_ring_buffer.
So this becomes:
cleanup:
for_each_ring(ring, dev_priv, i)
> + intel_cleanup_ring_buffer(ring);
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx
mailing list