* [igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: Commit state before remove_fb calls
@ 2019-08-02 17:27 Nicholas Kazlauskas
2019-08-02 18:14 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Nicholas Kazlauskas @ 2019-08-02 17:27 UTC (permalink / raw)
To: igt-dev
The kms_plane_multiple@* tests fail on amdgpu with a dmesg-warn due to
"atomic remove_fb failed with -22"
"WARNING: CPU: 6 PID: 183 at drivers/gpu/drm/drm_framebuffer.c:986"
The call to drmModeRmFB essentially creates an atomic commit internally
when we drop the last reference to the FB in IGT. This commit disables
the plane associated with framebuffer.
Since the planes are iterated by increasing index in IGT the last
plane to have its framebuffer removed is the cursor plane on AMDGPU.
On AMDGPU we can't enable the cursor plane without any active hardware
planes (primary, overlay) since there is no dedicated cursor plane.
The commits to release the overlay plane fail since it's the last
remaining plane and the cursor plane is still active.
The fix to the test is to just perform a commit that disables all 3
planes at the same time before calling remove_fb.
This improves performance enables support for drivers that don't
support cursor planes being enabled without a primary or overlay.
Cc: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
---
tests/kms_plane_multiple.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index 81ed45dd..255cd34a 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -317,6 +317,8 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
for_each_plane_on_pipe(&data->display, pipe, plane)
igt_plane_set_fb(plane, NULL);
+ igt_display_commit2(&data->display, COMMIT_ATOMIC);
+
for (int x = 0; x < c; x++)
igt_remove_fb(data->drm_fd, &data->fb[x]);
} while (!err && c < n_planes);
@@ -340,6 +342,8 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
for_each_plane_on_pipe(&data->display, pipe, plane)
igt_plane_set_fb(plane, NULL);
+ igt_display_commit2(&data->display, COMMIT_ATOMIC);
+
for (int x = 0; x < c; x++)
igt_remove_fb(data->drm_fd, &data->fb[x]);
--
2.17.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for tests/kms_plane_multiple: Commit state before remove_fb calls
2019-08-02 17:27 [igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: Commit state before remove_fb calls Nicholas Kazlauskas
@ 2019-08-02 18:14 ` Patchwork
2019-08-04 12:02 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-08-19 14:14 ` [igt-dev] [PATCH i-g-t] " Li, Sun peng (Leo)
2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2019-08-02 18:14 UTC (permalink / raw)
To: Nicholas Kazlauskas; +Cc: igt-dev
== Series Details ==
Series: tests/kms_plane_multiple: Commit state before remove_fb calls
URL : https://patchwork.freedesktop.org/series/64625/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_6618 -> IGTPW_3316
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/64625/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_3316 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live_hangcheck:
- fi-icl-u3: [PASS][1] -> [INCOMPLETE][2] ([fdo#107713] / [fdo#108569])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-icl-u3/igt@i915_selftest@live_hangcheck.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-kbl-7567u: [PASS][3] -> [WARN][4] ([fdo#109380])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-kbl-7567u/igt@kms_chamelium@common-hpd-after-suspend.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-kbl-7567u/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_pipe_crc_basic@read-crc-pipe-c:
- fi-kbl-7567u: [PASS][5] -> [SKIP][6] ([fdo#109271]) +23 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-kbl-7567u/igt@kms_pipe_crc_basic@read-crc-pipe-c.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-kbl-7567u/igt@kms_pipe_crc_basic@read-crc-pipe-c.html
#### Possible fixes ####
* igt@gem_ctx_create@basic-files:
- {fi-icl-guc}: [INCOMPLETE][7] ([fdo#107713] / [fdo#109100]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-icl-guc/igt@gem_ctx_create@basic-files.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-icl-guc/igt@gem_ctx_create@basic-files.html
* igt@i915_getparams_basic@basic-subslice-total:
- fi-icl-dsi: [INCOMPLETE][9] ([fdo#107713]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-icl-dsi/igt@i915_getparams_basic@basic-subslice-total.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-icl-dsi/igt@i915_getparams_basic@basic-subslice-total.html
* igt@kms_busy@basic-flip-a:
- fi-kbl-7567u: [SKIP][11] ([fdo#109271] / [fdo#109278]) -> [PASS][12] +2 similar issues
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-kbl-7567u/igt@kms_busy@basic-flip-a.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-kbl-7567u/igt@kms_busy@basic-flip-a.html
* igt@kms_busy@basic-flip-c:
- fi-kbl-7500u: [SKIP][13] ([fdo#109271] / [fdo#109278]) -> [PASS][14] +2 similar issues
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-kbl-7500u/igt@kms_busy@basic-flip-c.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-kbl-7500u/igt@kms_busy@basic-flip-c.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-blb-e6850: [INCOMPLETE][15] ([fdo#107718]) -> [PASS][16]
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-blb-e6850/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-blb-e6850/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
* igt@prime_vgem@basic-fence-flip:
- fi-kbl-7500u: [SKIP][17] ([fdo#109271]) -> [PASS][18] +23 similar issues
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/fi-kbl-7500u/igt@prime_vgem@basic-fence-flip.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/fi-kbl-7500u/igt@prime_vgem@basic-fence-flip.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#109100]: https://bugs.freedesktop.org/show_bug.cgi?id=109100
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109380]: https://bugs.freedesktop.org/show_bug.cgi?id=109380
[fdo#111045]: https://bugs.freedesktop.org/show_bug.cgi?id=111045
[fdo#111096]: https://bugs.freedesktop.org/show_bug.cgi?id=111096
Participating hosts (55 -> 46)
------------------------------
Missing (9): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-skl-6260u fi-icl-y fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5120 -> IGTPW_3316
CI-20190529: 20190529
CI_DRM_6618: 7bef836acab541f26d5806697c13181df22f71a1 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_3316: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/
IGT_5120: b3138fbea79d5d7935e53530b90efe3e816236f4 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 4+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for tests/kms_plane_multiple: Commit state before remove_fb calls
2019-08-02 17:27 [igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: Commit state before remove_fb calls Nicholas Kazlauskas
2019-08-02 18:14 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2019-08-04 12:02 ` Patchwork
2019-08-19 14:14 ` [igt-dev] [PATCH i-g-t] " Li, Sun peng (Leo)
2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2019-08-04 12:02 UTC (permalink / raw)
To: Nicholas Kazlauskas; +Cc: igt-dev
== Series Details ==
Series: tests/kms_plane_multiple: Commit state before remove_fb calls
URL : https://patchwork.freedesktop.org/series/64625/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_6618_full -> IGTPW_3316_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/64625/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_3316_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_eio@reset-stress:
- shard-snb: [PASS][1] -> [FAIL][2] ([fdo#109661])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-snb7/igt@gem_eio@reset-stress.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-snb5/igt@gem_eio@reset-stress.html
* igt@gem_tiled_swapping@non-threaded:
- shard-glk: [PASS][3] -> [DMESG-WARN][4] ([fdo#108686])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-glk9/igt@gem_tiled_swapping@non-threaded.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-glk4/igt@gem_tiled_swapping@non-threaded.html
* igt@i915_suspend@debugfs-reader:
- shard-apl: [PASS][5] -> [DMESG-WARN][6] ([fdo#108566]) +4 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-apl2/igt@i915_suspend@debugfs-reader.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-apl2/igt@i915_suspend@debugfs-reader.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-iclb: [PASS][7] -> [INCOMPLETE][8] ([fdo#107713])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb4/igt@i915_suspend@fence-restore-tiled2untiled.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb7/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@kms_cursor_crc@pipe-a-cursor-256x256-random:
- shard-apl: [PASS][9] -> [FAIL][10] ([fdo#103232])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-apl1/igt@kms_cursor_crc@pipe-a-cursor-256x256-random.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-apl4/igt@kms_cursor_crc@pipe-a-cursor-256x256-random.html
* igt@kms_frontbuffer_tracking@fbc-stridechange:
- shard-iclb: [PASS][11] -> [FAIL][12] ([fdo#103167]) +5 similar issues
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-stridechange.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-stridechange.html
* igt@kms_psr@psr2_primary_blt:
- shard-iclb: [PASS][13] -> [SKIP][14] ([fdo#109441])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb2/igt@kms_psr@psr2_primary_blt.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb8/igt@kms_psr@psr2_primary_blt.html
* igt@kms_setmode@basic:
- shard-apl: [PASS][15] -> [FAIL][16] ([fdo#99912])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-apl4/igt@kms_setmode@basic.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-apl4/igt@kms_setmode@basic.html
#### Possible fixes ####
* igt@gem_tiled_swapping@non-threaded:
- shard-apl: [DMESG-WARN][17] ([fdo#108686]) -> [PASS][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-apl2/igt@gem_tiled_swapping@non-threaded.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-apl7/igt@gem_tiled_swapping@non-threaded.html
* igt@i915_pm_rpm@i2c:
- shard-hsw: [FAIL][19] ([fdo#104097]) -> [PASS][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-hsw5/igt@i915_pm_rpm@i2c.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-hsw1/igt@i915_pm_rpm@i2c.html
* igt@i915_suspend@fence-restore-tiled2untiled:
- shard-apl: [DMESG-WARN][21] ([fdo#108566]) -> [PASS][22] +4 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-apl7/igt@i915_suspend@fence-restore-tiled2untiled.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-apl7/igt@i915_suspend@fence-restore-tiled2untiled.html
* igt@kms_cursor_edge_walk@pipe-b-64x64-top-edge:
- shard-iclb: [INCOMPLETE][23] ([fdo#107713]) -> [PASS][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb4/igt@kms_cursor_edge_walk@pipe-b-64x64-top-edge.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb4/igt@kms_cursor_edge_walk@pipe-b-64x64-top-edge.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt:
- shard-iclb: [FAIL][25] ([fdo#103167]) -> [PASS][26] +4 similar issues
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
* igt@kms_plane@pixel-format-pipe-b-planes-source-clamping:
- shard-iclb: [INCOMPLETE][27] ([fdo#107713] / [fdo#110036 ]) -> [PASS][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb7/igt@kms_plane@pixel-format-pipe-b-planes-source-clamping.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb7/igt@kms_plane@pixel-format-pipe-b-planes-source-clamping.html
* igt@kms_psr2_su@page_flip:
- shard-iclb: [SKIP][29] ([fdo#109642] / [fdo#111068]) -> [PASS][30]
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb4/igt@kms_psr2_su@page_flip.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb2/igt@kms_psr2_su@page_flip.html
* igt@kms_psr@no_drrs:
- shard-iclb: [FAIL][31] ([fdo#108341]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb1/igt@kms_psr@no_drrs.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb3/igt@kms_psr@no_drrs.html
* igt@kms_psr@psr2_suspend:
- shard-iclb: [SKIP][33] ([fdo#109441]) -> [PASS][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb8/igt@kms_psr@psr2_suspend.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb2/igt@kms_psr@psr2_suspend.html
#### Warnings ####
* igt@kms_dp_dsc@basic-dsc-enable-edp:
- shard-iclb: [SKIP][35] ([fdo#109349]) -> [DMESG-WARN][36] ([fdo#107724])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6618/shard-iclb4/igt@kms_dp_dsc@basic-dsc-enable-edp.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#104097]: https://bugs.freedesktop.org/show_bug.cgi?id=104097
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#108341]: https://bugs.freedesktop.org/show_bug.cgi?id=108341
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#108686]: https://bugs.freedesktop.org/show_bug.cgi?id=108686
[fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#109661]: https://bugs.freedesktop.org/show_bug.cgi?id=109661
[fdo#110036 ]: https://bugs.freedesktop.org/show_bug.cgi?id=110036
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912
Participating hosts (9 -> 5)
------------------------------
Missing (4): pig-skl-6260u shard-skl pig-hsw-4770r pig-glk-j5005
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_5120 -> IGTPW_3316
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_6618: 7bef836acab541f26d5806697c13181df22f71a1 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_3316: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/
IGT_5120: b3138fbea79d5d7935e53530b90efe3e816236f4 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3316/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: Commit state before remove_fb calls
2019-08-02 17:27 [igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: Commit state before remove_fb calls Nicholas Kazlauskas
2019-08-02 18:14 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2019-08-04 12:02 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2019-08-19 14:14 ` Li, Sun peng (Leo)
2 siblings, 0 replies; 4+ messages in thread
From: Li, Sun peng (Leo) @ 2019-08-19 14:14 UTC (permalink / raw)
To: Kazlauskas, Nicholas, igt-dev
On 2019-08-02 1:27 p.m., Nicholas Kazlauskas wrote:
> The kms_plane_multiple@* tests fail on amdgpu with a dmesg-warn due to
>
> "atomic remove_fb failed with -22"
> "WARNING: CPU: 6 PID: 183 at drivers/gpu/drm/drm_framebuffer.c:986"
>
> The call to drmModeRmFB essentially creates an atomic commit internally
> when we drop the last reference to the FB in IGT. This commit disables
> the plane associated with framebuffer.
>
> Since the planes are iterated by increasing index in IGT the last
> plane to have its framebuffer removed is the cursor plane on AMDGPU.
>
> On AMDGPU we can't enable the cursor plane without any active hardware
> planes (primary, overlay) since there is no dedicated cursor plane.
>
> The commits to release the overlay plane fail since it's the last
> remaining plane and the cursor plane is still active.
>
> The fix to the test is to just perform a commit that disables all 3
> planes at the same time before calling remove_fb.
>
> This improves performance enables support for drivers that don't
> support cursor planes being enabled without a primary or overlay.
>
> Cc: Leo Li <sunpeng.li@amd.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Reviewed-by: Leo Li <sunpeng.li@amd.com>
Thanks,
Leo
> ---
> tests/kms_plane_multiple.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
> index 81ed45dd..255cd34a 100644
> --- a/tests/kms_plane_multiple.c
> +++ b/tests/kms_plane_multiple.c
> @@ -317,6 +317,8 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
> for_each_plane_on_pipe(&data->display, pipe, plane)
> igt_plane_set_fb(plane, NULL);
>
> + igt_display_commit2(&data->display, COMMIT_ATOMIC);
> +
> for (int x = 0; x < c; x++)
> igt_remove_fb(data->drm_fd, &data->fb[x]);
> } while (!err && c < n_planes);
> @@ -340,6 +342,8 @@ test_plane_position_with_output(data_t *data, enum pipe pipe,
> for_each_plane_on_pipe(&data->display, pipe, plane)
> igt_plane_set_fb(plane, NULL);
>
> + igt_display_commit2(&data->display, COMMIT_ATOMIC);
> +
> for (int x = 0; x < c; x++)
> igt_remove_fb(data->drm_fd, &data->fb[x]);
>
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-08-19 14:14 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-02 17:27 [igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: Commit state before remove_fb calls Nicholas Kazlauskas
2019-08-02 18:14 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2019-08-04 12:02 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-08-19 14:14 ` [igt-dev] [PATCH i-g-t] " Li, Sun peng (Leo)
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.