Hi Lucas > > Clearing the whole bitmap at once is only a minor optimization in > a path that should be extremely cold. Free the events by calling > event_free() instead of directly manipulating the completion count > and event bitmap. > > Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx> Reviewed-by: Christian Gmeiner <cgmeiner@xxxxxxxxxx> > --- > drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > index 6d4df9f1aeff..4e18aa8566c6 100644 > --- a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > +++ b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c > @@ -1442,8 +1442,7 @@ void etnaviv_gpu_recover_hang(struct etnaviv_gem_submit *submit) > /* complete all events, the GPU won't do it after the reset */ > spin_lock(&gpu->event_spinlock); > for_each_set_bit(i, gpu->event_bitmap, ETNA_NR_EVENTS) > - complete(&gpu->event_free); > - bitmap_zero(gpu->event_bitmap, ETNA_NR_EVENTS); > + event_free(gpu, i); > spin_unlock(&gpu->event_spinlock); > > etnaviv_gpu_hw_init(gpu); > -- > 2.39.2 > -- greets -- Christian Gmeiner, MSc https://christian-gmeiner.info/privacypolicy