From: Greg Kroah-Hartman Date: Tue, 24 Mar 2015 18:41:25 +0000 (+0100) Subject: 3.19-stable patches X-Git-Tag: v3.19.3~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=25b7550f3e27cc9abf2a3ee09c1a29289617bffd;p=thirdparty%2Fkernel%2Fstable-queue.git 3.19-stable patches added patches: drm-i915-use-in_interrupt-not-in_irq-to-check-context.patch --- diff --git a/queue-3.19/drm-i915-use-in_interrupt-not-in_irq-to-check-context.patch b/queue-3.19/drm-i915-use-in_interrupt-not-in_irq-to-check-context.patch new file mode 100644 index 00000000000..530977381e7 --- /dev/null +++ b/queue-3.19/drm-i915-use-in_interrupt-not-in_irq-to-check-context.patch @@ -0,0 +1,40 @@ +From 6c51d46f135b00c00373fcd029786ccef2b02b5b Mon Sep 17 00:00:00 2001 +From: Dave Gordon +Date: Fri, 6 Mar 2015 15:34:26 +0000 +Subject: drm/i915: use in_interrupt() not in_irq() to check context + +From: Dave Gordon + +commit 6c51d46f135b00c00373fcd029786ccef2b02b5b upstream. + +The kernel in_irq() function tests for hard-IRQ context only, so if a +system is run with the kernel 'threadirqs' option selected, the test in +intel_check_page_flip() generates lots of warnings, because then it gets +called in soft-IRQ context. + +We can instead use in_interrupt() which allows for either type of +interrupt, while still detecting and complaining about misuse of the +page flip code if it is ever called from non-interrupt context. + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89321 +Signed-off-by: Dave Gordon +Reviewed-by: Daniel Vetter +Signed-off-by: Jani Nikula +Cc: Josh Boyer +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/i915/intel_display.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -9702,7 +9702,7 @@ void intel_check_page_flip(struct drm_de + struct drm_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe]; + struct intel_crtc *intel_crtc = to_intel_crtc(crtc); + +- WARN_ON(!in_irq()); ++ WARN_ON(!in_interrupt()); + + if (crtc == NULL) + return; diff --git a/queue-3.19/series b/queue-3.19/series index aaa0bbfcb36..2cd69bf9b71 100644 --- a/queue-3.19/series +++ b/queue-3.19/series @@ -121,3 +121,4 @@ target-fix-reference-leak-in-target_get_sess_cmd-error-path.patch target-fix-virtual-lun-0-target_configure_device-failure-oops.patch iscsi-target-avoid-early-conn_logout_comp-for-iser-connections.patch target-pscsi-fix-null-pointer-dereference-in-get_device_type.patch +drm-i915-use-in_interrupt-not-in_irq-to-check-context.patch