Displaying 2 results from an estimated 2 matches for "nouveau_event_enable_locked".
2013 Aug 12
2
[PATCH] drm/nouveau: fix vblank deadlock
..., handler);
+ list_del(&handler->head);
+
+ if (event->toggle_lock)
+ spin_lock(event->toggle_lock);
+ nouveau_event_disable_locked(event, index, 1);
+ if (event->toggle_lock)
+ spin_unlock(event->toggle_lock);
+
spin_unlock_irqrestore(&event->lock, flags);
}
void
+nouveau_event_enable_locked(struct nouveau_event *event, int index)
+{
+ if (index >= event->index_nr)
+ return;
+
+ if (!event->index[index].refs++ && event->enable)
+ event->enable(event, index);
+}
+
+void
+nouveau_event_disable_locked(struct nouveau_event *event, int index, int refs)
+{
+ if (inde...
2013 Aug 19
0
[PATCH] drm/nouveau: fix vblank deadlock
...if (event->toggle_lock)
> + spin_lock(event->toggle_lock);
> + nouveau_event_disable_locked(event, index, 1);
> + if (event->toggle_lock)
> + spin_unlock(event->toggle_lock);
> +
> spin_unlock_irqrestore(&event->lock, flags);
> }
>
> void
> +nouveau_event_enable_locked(struct nouveau_event *event, int index)
> +{
> + if (index >= event->index_nr)
> + return;
> +
> + if (!event->index[index].refs++ && event->enable)
> + event->enable(event, index);
> +}
> +
> +void
> +nouveau_event_disable_locked(struct nouvea...