From: Rob Clark Date: Sat, 8 Nov 2014 15:16:19 +0000 (-0500) Subject: drm/irq: BUG_ON() -> WARN_ON() X-Git-Tag: v3.16.49~37 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ac500cd3863d7f89c448d77416b5fb25b2c734bc;p=thirdparty%2Fkernel%2Fstable.git drm/irq: BUG_ON() -> WARN_ON() commit 7f907bf284ba7bb8d271f094b226699d3fef2142 upstream. Let's make things a bit easier to debug when things go bad (potentially under console_lock). Signed-off-by: Rob Clark Reviewed-by: Michel Dänzer Signed-off-by: Dave Airlie [bwh: Backported to 3.16: adjust context] Signed-off-by: Ben Hutchings --- diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c index 0de123afdb346..990e5ac8b18d0 100644 --- a/drivers/gpu/drm/drm_irq.c +++ b/drivers/gpu/drm/drm_irq.c @@ -973,7 +973,8 @@ EXPORT_SYMBOL(drm_crtc_vblank_get); */ void drm_vblank_put(struct drm_device *dev, int crtc) { - BUG_ON(atomic_read(&dev->vblank[crtc].refcount) == 0); + if (WARN_ON(atomic_read(&dev->vblank[crtc].refcount) == 0)) + return; /* Last user schedules interrupt disable */ if (atomic_dec_and_test(&dev->vblank[crtc].refcount) &&