Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6d1d1cc9 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/timer: allow alarms to be cancelled



Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 10caad33
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -96,11 +96,16 @@ nv04_timer_alarm(struct nouveau_timer *ptimer, u64 time,

	/* append new alarm to list, in soonest-alarm-first order */
	spin_lock_irqsave(&priv->lock, flags);
	if (!time) {
		if (!list_empty(&alarm->head))
			list_del(&alarm->head);
	} else {
		list_for_each_entry(list, &priv->alarms, head) {
			if (list->timestamp > alarm->timestamp)
				break;
		}
		list_add_tail(&alarm->head, &list->head);
	}
	spin_unlock_irqrestore(&priv->lock, flags);

	/* process pending alarms */