* [Intel-gfx] [CI 1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
@ 2020-02-14 13:50 Jani Nikula
2020-02-14 13:50 ` [Intel-gfx] [CI 2/2] drm/i915: split i915_driver_modeset_remove() " Jani Nikula
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Jani Nikula @ 2020-02-14 13:50 UTC (permalink / raw)
To: intel-gfx; +Cc: jani.nikula
Split intel_modeset_driver_remove() to two, the part with working irqs
before irq uninstall, and the part after irq uninstall. Move
irq_unintall() closer to the layer it belongs.
The error path in i915_driver_modeset_probe() looks obviously weird
after this, but remains as good or broken as it ever was. No functional
changes.
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/display/intel_display.c | 12 +++++-------
drivers/gpu/drm/i915/display/intel_display.h | 1 +
drivers/gpu/drm/i915/i915_drv.c | 5 +++++
3 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index e09d3c93c52b..d9c1c952a27d 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -18898,6 +18898,7 @@ static void intel_hpd_poll_fini(struct drm_i915_private *i915)
drm_connector_list_iter_end(&conn_iter);
}
+/* part #1: call before irq uninstall */
void intel_modeset_driver_remove(struct drm_i915_private *i915)
{
flush_workqueue(i915->flip_wq);
@@ -18905,14 +18906,11 @@ void intel_modeset_driver_remove(struct drm_i915_private *i915)
flush_work(&i915->atomic_helper.free_work);
WARN_ON(!llist_empty(&i915->atomic_helper.free_list));
+}
- /*
- * Interrupts and polling as the first thing to avoid creating havoc.
- * Too much stuff here (turning of connectors, ...) would
- * experience fancy races otherwise.
- */
- intel_irq_uninstall(i915);
-
+/* part #2: call after irq uninstall */
+void intel_modeset_driver_remove_noirq(struct drm_i915_private *i915)
+{
/*
* Due to the hpd irq storm handling the hotplug work can re-arm the
* poll handlers. Hence disable polling after hpd handling is shut down.
diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h
index 75438a136d58..f92efbbec838 100644
--- a/drivers/gpu/drm/i915/display/intel_display.h
+++ b/drivers/gpu/drm/i915/display/intel_display.h
@@ -616,6 +616,7 @@ intel_format_info_is_yuv_semiplanar(const struct drm_format_info *info,
void intel_modeset_init_hw(struct drm_i915_private *i915);
int intel_modeset_init(struct drm_i915_private *i915);
void intel_modeset_driver_remove(struct drm_i915_private *i915);
+void intel_modeset_driver_remove_noirq(struct drm_i915_private *i915);
void intel_display_resume(struct drm_device *dev);
void intel_init_pch_refclk(struct drm_i915_private *dev_priv);
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 955f52bcd6a2..4636d723d531 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -333,6 +333,9 @@ static int i915_driver_modeset_probe(struct drm_i915_private *i915)
i915_gem_driver_release(i915);
cleanup_modeset:
intel_modeset_driver_remove(i915);
+ intel_irq_uninstall(i915);
+ intel_modeset_driver_remove_noirq(i915);
+ goto cleanup_csr;
cleanup_irq:
intel_irq_uninstall(i915);
cleanup_csr:
@@ -349,6 +352,8 @@ static void i915_driver_modeset_remove(struct drm_i915_private *i915)
intel_irq_uninstall(i915);
+ intel_modeset_driver_remove_noirq(i915);
+
intel_bios_driver_remove(i915);
intel_vga_unregister(i915);
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Intel-gfx] [CI 2/2] drm/i915: split i915_driver_modeset_remove() to pre/post irq uninstall
2020-02-14 13:50 [Intel-gfx] [CI 1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall Jani Nikula
@ 2020-02-14 13:50 ` Jani Nikula
2020-02-14 19:47 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [CI,1/2] drm/i915: split intel_modeset_driver_remove() " Patchwork
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Jani Nikula @ 2020-02-14 13:50 UTC (permalink / raw)
To: intel-gfx; +Cc: jani.nikula
Push irq uninstall further up, by splitting i915_driver_modeset_remove()
to two, the part with working irqs before irq uninstall, and the part
after irq uninstall. No functional changes.
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/i915_drv.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 4636d723d531..2e567bda79bd 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -346,12 +346,15 @@ static int i915_driver_modeset_probe(struct drm_i915_private *i915)
return ret;
}
+/* part #1: call before irq uninstall */
static void i915_driver_modeset_remove(struct drm_i915_private *i915)
{
intel_modeset_driver_remove(i915);
+}
- intel_irq_uninstall(i915);
-
+/* part #2: call after irq uninstall */
+static void i915_driver_modeset_remove_noirq(struct drm_i915_private *i915)
+{
intel_modeset_driver_remove_noirq(i915);
intel_bios_driver_remove(i915);
@@ -1593,6 +1596,10 @@ void i915_driver_remove(struct drm_i915_private *i915)
i915_driver_modeset_remove(i915);
+ intel_irq_uninstall(i915);
+
+ i915_driver_modeset_remove_noirq(i915);
+
i915_reset_error_state(i915);
i915_gem_driver_remove(i915);
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [CI,1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
2020-02-14 13:50 [Intel-gfx] [CI 1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall Jani Nikula
2020-02-14 13:50 ` [Intel-gfx] [CI 2/2] drm/i915: split i915_driver_modeset_remove() " Jani Nikula
@ 2020-02-14 19:47 ` Patchwork
2020-02-18 0:26 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2020-02-19 13:21 ` [Intel-gfx] [CI 1/2] " Jani Nikula
3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2020-02-14 19:47 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx
== Series Details ==
Series: series starting with [CI,1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
URL : https://patchwork.freedesktop.org/series/73469/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_7942 -> Patchwork_16574
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/index.html
Known issues
------------
Here are the changes found in Patchwork_16574 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live_gem_contexts:
- fi-cml-s: [PASS][1] -> [DMESG-FAIL][2] ([i915#877])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/fi-cml-s/igt@i915_selftest@live_gem_contexts.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/fi-cml-s/igt@i915_selftest@live_gem_contexts.html
#### Possible fixes ####
* igt@i915_selftest@live_gem_contexts:
- fi-cfl-8700k: [INCOMPLETE][3] ([i915#424]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/fi-cfl-8700k/igt@i915_selftest@live_gem_contexts.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/fi-cfl-8700k/igt@i915_selftest@live_gem_contexts.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[i915#424]: https://gitlab.freedesktop.org/drm/intel/issues/424
[i915#877]: https://gitlab.freedesktop.org/drm/intel/issues/877
[i915#937]: https://gitlab.freedesktop.org/drm/intel/issues/937
Participating hosts (47 -> 39)
------------------------------
Additional (4): fi-bsw-kefka fi-blb-e6850 fi-cfl-8109u fi-ilk-650
Missing (12): fi-ilk-m540 fi-bdw-5557u fi-hsw-4200u fi-hsw-peppy fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-skl-lmem fi-bdw-samus fi-byt-n2820 fi-skl-6600u fi-kbl-r
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_7942 -> Patchwork_16574
CI-20190529: 20190529
CI_DRM_7942: f4805f5a516d0a107438ff0f236c9f4187434819 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5442: 3f6080996885b997685f08ecb8b416b2dc485290 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16574: 8185da98b0f023ec8d2e2aeea5bf81d1a28af187 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
8185da98b0f0 drm/i915: split i915_driver_modeset_remove() to pre/post irq uninstall
5b99455a74fd drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [CI,1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
2020-02-14 13:50 [Intel-gfx] [CI 1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall Jani Nikula
2020-02-14 13:50 ` [Intel-gfx] [CI 2/2] drm/i915: split i915_driver_modeset_remove() " Jani Nikula
2020-02-14 19:47 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [CI,1/2] drm/i915: split intel_modeset_driver_remove() " Patchwork
@ 2020-02-18 0:26 ` Patchwork
2020-02-19 13:21 ` [Intel-gfx] [CI 1/2] " Jani Nikula
3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2020-02-18 0:26 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx
== Series Details ==
Series: series starting with [CI,1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
URL : https://patchwork.freedesktop.org/series/73469/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_7942_full -> Patchwork_16574_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_16574_full:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* {igt@gem_ctx_persistence@close-replace-race}:
- shard-apl: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-apl7/igt@gem_ctx_persistence@close-replace-race.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-apl1/igt@gem_ctx_persistence@close-replace-race.html
Known issues
------------
Here are the changes found in Patchwork_16574_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_isolation@rcs0-s3:
- shard-kbl: [PASS][3] -> [DMESG-WARN][4] ([i915#180]) +2 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-kbl6/igt@gem_ctx_isolation@rcs0-s3.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-kbl6/igt@gem_ctx_isolation@rcs0-s3.html
* igt@gem_exec_schedule@deep-bsd2:
- shard-iclb: [PASS][5] -> [SKIP][6] ([fdo#109276]) +11 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb2/igt@gem_exec_schedule@deep-bsd2.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb6/igt@gem_exec_schedule@deep-bsd2.html
* igt@gem_exec_schedule@pi-shared-iova-bsd:
- shard-iclb: [PASS][7] -> [SKIP][8] ([i915#677])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb3/igt@gem_exec_schedule@pi-shared-iova-bsd.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb2/igt@gem_exec_schedule@pi-shared-iova-bsd.html
* igt@gem_exec_schedule@preemptive-hang-bsd:
- shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#112146]) +4 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb8/igt@gem_exec_schedule@preemptive-hang-bsd.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb2/igt@gem_exec_schedule@preemptive-hang-bsd.html
* igt@gem_partial_pwrite_pread@write-uncached:
- shard-hsw: [PASS][11] -> [FAIL][12] ([i915#694]) +1 similar issue
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-hsw1/igt@gem_partial_pwrite_pread@write-uncached.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-hsw7/igt@gem_partial_pwrite_pread@write-uncached.html
* igt@i915_pm_rps@reset:
- shard-iclb: [PASS][13] -> [FAIL][14] ([i915#413])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb4/igt@i915_pm_rps@reset.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb5/igt@i915_pm_rps@reset.html
* igt@kms_cursor_crc@pipe-a-cursor-128x128-sliding:
- shard-skl: [PASS][15] -> [FAIL][16] ([i915#54])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl7/igt@kms_cursor_crc@pipe-a-cursor-128x128-sliding.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl1/igt@kms_cursor_crc@pipe-a-cursor-128x128-sliding.html
* igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-ytiled:
- shard-skl: [PASS][17] -> [FAIL][18] ([i915#52] / [i915#54])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl7/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-ytiled.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl1/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-ytiled.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-apl: [PASS][19] -> [DMESG-WARN][20] ([i915#180]) +2 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-apl6/igt@kms_flip@flip-vs-suspend-interruptible.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-apl6/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min:
- shard-skl: [PASS][21] -> [FAIL][22] ([fdo#108145])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl7/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl1/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html
* igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
- shard-skl: [PASS][23] -> [FAIL][24] ([fdo#108145] / [i915#265]) +1 similar issue
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html
* igt@kms_plane_lowres@pipe-a-tiling-x:
- shard-glk: [PASS][25] -> [FAIL][26] ([i915#899])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-glk8/igt@kms_plane_lowres@pipe-a-tiling-x.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-glk3/igt@kms_plane_lowres@pipe-a-tiling-x.html
* igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
- shard-skl: [PASS][27] -> [DMESG-WARN][28] ([IGT#6])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl7/igt@kms_plane_multiple@atomic-pipe-b-tiling-y.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl7/igt@kms_plane_multiple@atomic-pipe-b-tiling-y.html
* igt@kms_psr@psr2_cursor_render:
- shard-iclb: [PASS][29] -> [SKIP][30] ([fdo#109441])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb2/igt@kms_psr@psr2_cursor_render.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb6/igt@kms_psr@psr2_cursor_render.html
* igt@kms_vblank@pipe-b-ts-continuation-suspend:
- shard-skl: [PASS][31] -> [INCOMPLETE][32] ([i915#69])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl7/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl5/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
* igt@perf_pmu@busy-vcs1:
- shard-iclb: [PASS][33] -> [SKIP][34] ([fdo#112080]) +5 similar issues
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb2/igt@perf_pmu@busy-vcs1.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb6/igt@perf_pmu@busy-vcs1.html
#### Possible fixes ####
* igt@gem_exec_schedule@fifo-bsd:
- shard-iclb: [SKIP][35] ([fdo#112146]) -> [PASS][36] +1 similar issue
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb2/igt@gem_exec_schedule@fifo-bsd.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb6/igt@gem_exec_schedule@fifo-bsd.html
* igt@gem_partial_pwrite_pread@write-display:
- shard-hsw: [FAIL][37] ([i915#694]) -> [PASS][38] +2 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-hsw4/igt@gem_partial_pwrite_pread@write-display.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-hsw8/igt@gem_partial_pwrite_pread@write-display.html
* igt@gen9_exec_parse@allowed-single:
- shard-skl: [DMESG-WARN][39] ([i915#716]) -> [PASS][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl6/igt@gen9_exec_parse@allowed-single.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl2/igt@gen9_exec_parse@allowed-single.html
* igt@i915_hangman@error-state-capture-vcs1:
- shard-iclb: [SKIP][41] ([fdo#112080]) -> [PASS][42] +3 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb8/igt@i915_hangman@error-state-capture-vcs1.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb2/igt@i915_hangman@error-state-capture-vcs1.html
* igt@i915_pm_rps@waitboost:
- shard-iclb: [FAIL][43] ([i915#413]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb7/igt@i915_pm_rps@waitboost.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb2/igt@i915_pm_rps@waitboost.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-skl: [FAIL][45] ([i915#79]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-skl9/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-skl10/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
- shard-kbl: [INCOMPLETE][47] ([fdo#103665]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-kbl2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-kbl7/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:
- shard-kbl: [DMESG-WARN][49] ([i915#180]) -> [PASS][50] +4 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-kbl3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-kbl4/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
* igt@kms_plane_lowres@pipe-a-tiling-y:
- shard-glk: [FAIL][51] ([i915#899]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-glk7/igt@kms_plane_lowres@pipe-a-tiling-y.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-glk6/igt@kms_plane_lowres@pipe-a-tiling-y.html
* igt@kms_psr@psr2_primary_mmap_cpu:
- shard-iclb: [SKIP][53] ([fdo#109441]) -> [PASS][54] +1 similar issue
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb7/igt@kms_psr@psr2_primary_mmap_cpu.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html
* igt@kms_setmode@basic:
- shard-apl: [FAIL][55] ([i915#31]) -> [PASS][56]
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-apl1/igt@kms_setmode@basic.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-apl7/igt@kms_setmode@basic.html
* igt@kms_vblank@pipe-b-ts-continuation-suspend:
- shard-apl: [DMESG-WARN][57] ([i915#180]) -> [PASS][58] +1 similar issue
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-apl8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-apl8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
* igt@perf_pmu@cpu-hotplug:
- shard-hsw: [INCOMPLETE][59] ([i915#1176] / [i915#61]) -> [PASS][60]
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-hsw5/igt@perf_pmu@cpu-hotplug.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-hsw8/igt@perf_pmu@cpu-hotplug.html
* igt@prime_mmap_coherency@ioctl-errors:
- shard-hsw: [FAIL][61] ([i915#831]) -> [PASS][62]
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-hsw7/igt@prime_mmap_coherency@ioctl-errors.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-hsw1/igt@prime_mmap_coherency@ioctl-errors.html
* igt@prime_vgem@fence-wait-bsd2:
- shard-iclb: [SKIP][63] ([fdo#109276]) -> [PASS][64] +13 similar issues
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb7/igt@prime_vgem@fence-wait-bsd2.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb2/igt@prime_vgem@fence-wait-bsd2.html
#### Warnings ####
* igt@gem_ctx_isolation@vcs1-nonpriv-switch:
- shard-iclb: [FAIL][65] ([IGT#28]) -> [SKIP][66] ([fdo#112080])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-iclb2/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-iclb6/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html
* igt@i915_pm_rpm@gem-evict-pwrite:
- shard-snb: [INCOMPLETE][67] ([i915#82]) -> [SKIP][68] ([fdo#109271])
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-snb5/igt@i915_pm_rpm@gem-evict-pwrite.html
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-snb2/igt@i915_pm_rpm@gem-evict-pwrite.html
* igt@runner@aborted:
- shard-hsw: ([FAIL][69], [FAIL][70]) ([i915#1176] / [i915#974]) -> [FAIL][71] ([i915#974])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-hsw5/igt@runner@aborted.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7942/shard-hsw6/igt@runner@aborted.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/shard-hsw1/igt@runner@aborted.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#28]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/28
[IGT#6]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/6
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080
[fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146
[i915#1176]: https://gitlab.freedesktop.org/drm/intel/issues/1176
[i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
[i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31
[i915#413]: https://gitlab.freedesktop.org/drm/intel/issues/413
[i915#52]: https://gitlab.freedesktop.org/drm/intel/issues/52
[i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54
[i915#61]: https://gitlab.freedesktop.org/drm/intel/issues/61
[i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677
[i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69
[i915#694]: https://gitlab.freedesktop.org/drm/intel/issues/694
[i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
[i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
[i915#82]: https://gitlab.freedesktop.org/drm/intel/issues/82
[i915#831]: https://gitlab.freedesktop.org/drm/intel/issues/831
[i915#899]: https://gitlab.freedesktop.org/drm/intel/issues/899
[i915#974]: https://gitlab.freedesktop.org/drm/intel/issues/974
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_7942 -> Patchwork_16574
CI-20190529: 20190529
CI_DRM_7942: f4805f5a516d0a107438ff0f236c9f4187434819 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5442: 3f6080996885b997685f08ecb8b416b2dc485290 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_16574: 8185da98b0f023ec8d2e2aeea5bf81d1a28af187 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16574/index.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Intel-gfx] [CI 1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall
2020-02-14 13:50 [Intel-gfx] [CI 1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall Jani Nikula
` (2 preceding siblings ...)
2020-02-18 0:26 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
@ 2020-02-19 13:21 ` Jani Nikula
3 siblings, 0 replies; 5+ messages in thread
From: Jani Nikula @ 2020-02-19 13:21 UTC (permalink / raw)
To: intel-gfx
On Fri, 14 Feb 2020, Jani Nikula <jani.nikula@intel.com> wrote:
> Split intel_modeset_driver_remove() to two, the part with working irqs
> before irq uninstall, and the part after irq uninstall. Move
> irq_unintall() closer to the layer it belongs.
>
> The error path in i915_driver_modeset_probe() looks obviously weird
> after this, but remains as good or broken as it ever was. No functional
> changes.
>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Pushed both, thanks again for review.
BR,
Jani.
> ---
> drivers/gpu/drm/i915/display/intel_display.c | 12 +++++-------
> drivers/gpu/drm/i915/display/intel_display.h | 1 +
> drivers/gpu/drm/i915/i915_drv.c | 5 +++++
> 3 files changed, 11 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index e09d3c93c52b..d9c1c952a27d 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -18898,6 +18898,7 @@ static void intel_hpd_poll_fini(struct drm_i915_private *i915)
> drm_connector_list_iter_end(&conn_iter);
> }
>
> +/* part #1: call before irq uninstall */
> void intel_modeset_driver_remove(struct drm_i915_private *i915)
> {
> flush_workqueue(i915->flip_wq);
> @@ -18905,14 +18906,11 @@ void intel_modeset_driver_remove(struct drm_i915_private *i915)
>
> flush_work(&i915->atomic_helper.free_work);
> WARN_ON(!llist_empty(&i915->atomic_helper.free_list));
> +}
>
> - /*
> - * Interrupts and polling as the first thing to avoid creating havoc.
> - * Too much stuff here (turning of connectors, ...) would
> - * experience fancy races otherwise.
> - */
> - intel_irq_uninstall(i915);
> -
> +/* part #2: call after irq uninstall */
> +void intel_modeset_driver_remove_noirq(struct drm_i915_private *i915)
> +{
> /*
> * Due to the hpd irq storm handling the hotplug work can re-arm the
> * poll handlers. Hence disable polling after hpd handling is shut down.
> diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h
> index 75438a136d58..f92efbbec838 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.h
> +++ b/drivers/gpu/drm/i915/display/intel_display.h
> @@ -616,6 +616,7 @@ intel_format_info_is_yuv_semiplanar(const struct drm_format_info *info,
> void intel_modeset_init_hw(struct drm_i915_private *i915);
> int intel_modeset_init(struct drm_i915_private *i915);
> void intel_modeset_driver_remove(struct drm_i915_private *i915);
> +void intel_modeset_driver_remove_noirq(struct drm_i915_private *i915);
> void intel_display_resume(struct drm_device *dev);
> void intel_init_pch_refclk(struct drm_i915_private *dev_priv);
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index 955f52bcd6a2..4636d723d531 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -333,6 +333,9 @@ static int i915_driver_modeset_probe(struct drm_i915_private *i915)
> i915_gem_driver_release(i915);
> cleanup_modeset:
> intel_modeset_driver_remove(i915);
> + intel_irq_uninstall(i915);
> + intel_modeset_driver_remove_noirq(i915);
> + goto cleanup_csr;
> cleanup_irq:
> intel_irq_uninstall(i915);
> cleanup_csr:
> @@ -349,6 +352,8 @@ static void i915_driver_modeset_remove(struct drm_i915_private *i915)
>
> intel_irq_uninstall(i915);
>
> + intel_modeset_driver_remove_noirq(i915);
> +
> intel_bios_driver_remove(i915);
>
> intel_vga_unregister(i915);
--
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-02-19 13:21 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-14 13:50 [Intel-gfx] [CI 1/2] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall Jani Nikula
2020-02-14 13:50 ` [Intel-gfx] [CI 2/2] drm/i915: split i915_driver_modeset_remove() " Jani Nikula
2020-02-14 19:47 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [CI,1/2] drm/i915: split intel_modeset_driver_remove() " Patchwork
2020-02-18 0:26 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2020-02-19 13:21 ` [Intel-gfx] [CI 1/2] " Jani Nikula
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).