Bug 83747

Summary: [HSW/BDW/BSW Bisected]igt/kms_plane/plane-position-covered-pipe-A-plane-1 fails
Product: DRI Reporter: Guo Jinxian <jinxianx.guo>
Component: DRM/IntelAssignee: Intel GFX Bugs mailing list <intel-gfx-bugs>
Status: CLOSED FIXED QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: normal    
Priority: high CC: intel-gfx-bugs
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg
none
drm/i915: Fix regression in the sprite plane update split none

Description Guo Jinxian 2014-09-11 06:07:40 UTC
Created attachment 106103 [details]
dmesg

==System Environment==
--------------------------
Regression: Yes.
Good commit on -next-queued: 9c787942907face82da505c2c5493998b56cfc5a

Non-working platforms: BDW BSW

==kernel==
--------------------------
origin/drm-intel-nightly: 72faa6a63351879b381bd9e4013f38bc94f11999(fails)
    drm-intel-nightly: 2014y-09m-10d-18h-58m-22s integration manifest
origin/drm-intel-next-queued:449b3795f2a48c51ad1714cd5eab0179e37c6a85(fails)
    drm/i915: create intel_update_pipe_size()
origin/drm-intel-fixes: 7a98948f3b536ca9a077e84966ddc0e9f53726df(works)
    drm/i915: Wait for vblank before enabling the TV encoder

==Bug detailed description==
-----------------------------
igt/kms_plane/plane-position-covered-pipe-A-plane-1 fails

Output:
root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./kms_plane --run-subtest plane-position-covered-pipe-A-plane-1
IGT-Version: 1.8-g107151c (x86_64) (Linux: 3.17.0-rc4_drm-intel-nightly_72faa6_20140911+ x86_64)
Testing connector eDP-1 using pipe A plane 1
Test assertion failure function test_plane_position_with_output, file kms_plane.c:197:
Failed assertion: igt_crc_equal(&test.reference_crc, &crc)
Subtest plane-position-covered-pipe-A-plane-1: FAIL (1.257s)



==Reproduce steps==
---------------------------- 
1. ./kms_plane --run-subtest plane-position-covered-pipe-A-plane-1
Comment 1 Guo Jinxian 2014-09-11 07:02:17 UTC
Bisect shows: 7e4bf45dbd99a965c7b5d5944c6dc4246f171eb5 is the first bad commit
commit 7e4bf45dbd99a965c7b5d5944c6dc4246f171eb5
Author:     Gustavo Padovan <gustavo.padovan@collabora.co.uk>
AuthorDate: Fri Sep 5 17:04:47 2014 -0300
Commit:     Daniel Vetter <daniel.vetter@ffwll.ch>
CommitDate: Mon Sep 8 16:42:56 2014 +0200

    drm/i915: split intel_update_plane into check() and commit()
    
    Due to the upcoming atomic modesetting feature we need to separate
    some update functions into a check step that can fail and a commit
    step that should, ideally, never fail.
    
    This commit splits intel_update_plane() and its commit part can still
    fail due to the fb pinning procedure.
    
    Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
    Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Comment 2 Guo Jinxian 2014-09-11 07:12:22 UTC
Update test result on HSW

[root@x-hsw24 tests]# ./kms_plane --run-subtest plane-position-covered-pipe-A-plane-1
IGT-Version: 1.8-g107151c (x86_64) (Linux: 3.17.0-rc4_drm-intel-nightly_99f444_20140910+ x86_64)
Testing connector VGA-1 using pipe A plane 1
Test assertion failure function test_plane_position_with_output, file kms_plane.c:197:
Failed assertion: igt_crc_equal(&test.reference_crc, &crc)
Subtest plane-position-covered-pipe-A-plane-1: FAIL (1.005s)
[root@x-hsw24 tests]# ./kms_plane --run-subtest plane-position-covered-pipe-B-plane-1
IGT-Version: 1.8-g107151c (x86_64) (Linux: 3.17.0-rc4_drm-intel-nightly_99f444_20140910+ x86_64)
Testing connector VGA-1 using pipe B plane 1
Test assertion failure function test_plane_position_with_output, file kms_plane.c:197:
Failed assertion: igt_crc_equal(&test.reference_crc, &crc)
Subtest plane-position-covered-pipe-B-plane-1: FAIL (0.961s)
[root@x-hsw24 tests]# ./kms_plane --run-subtest plane-position-covered-pipe-C-plane-1
IGT-Version: 1.8-g107151c (x86_64) (Linux: 3.17.0-rc4_drm-intel-nightly_99f444_20140910+ x86_64)
Testing connector VGA-1 using pipe C plane 1
Test assertion failure function test_plane_position_with_output, file kms_plane.c:197:
Failed assertion: igt_crc_equal(&test.reference_crc, &crc)
Subtest plane-position-covered-pipe-C-plane-1: FAIL (0.965s)
Comment 3 Gustavo Padovan 2014-09-11 20:48:52 UTC
Created attachment 106157 [details] [review]
drm/i915: Fix regression in the sprite plane update split

7e4bf45dbd99a965c7b5d5944c6dc4246f171eb5 introduced the regression.
We fix it by doing the right assignment of crtc_y
Comment 4 Gustavo Padovan 2014-09-11 21:09:15 UTC
Test results on my end after this fix. The pipe-C test was already with SKIP result so regression seems to be good.

[root@i915 tests]# ./kms_plane --run-subtest plane-position-covered-pipe-A-plane-1
IGT-Version: 1.7-ga16ebcc (x86_64) (Linux: 3.17.0-rc4-00475-g603d921 x86_64)
Testing connector LVDS-1 using pipe A plane 1
Subtest plane-position-covered-pipe-A-plane-1: SUCCESS
[root@i915 tests]# ./kms_plane --run-subtest plane-position-covered-pipe-B-plane-1
IGT-Version: 1.7-ga16ebcc (x86_64) (Linux: 3.17.0-rc4-00475-g603d921 x86_64)
Testing connector LVDS-1 using pipe B plane 1
Subtest plane-position-covered-pipe-B-plane-1: SUCCESS
[root@i915 tests]# 
[root@i915 tests]# ./kms_plane --run-subtest plane-position-covered-pipe-C-plane-1
IGT-Version: 1.7-ga16ebcc (x86_64) (Linux: 3.17.0-rc4-00475-g603d921 x86_64)
Test requirement not met in function test_plane_position, file kms_plane.c:216:
Test requirement: !(pipe >= data->display.n_pipes)
Subtest plane-position-covered-pipe-C-plane-1: SKIP
Comment 5 Jani Nikula 2014-09-12 07:11:39 UTC
Please re-test with the patch.
Comment 6 Jani Nikula 2014-09-12 08:40:47 UTC
(In reply to comment #5)
> Please re-test with the patch.

Scratch that, please re-test with current nightly that now has

commit a4aaf755db1804a2c169d41e9b95867637851f9e
Author: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Date:   Thu Sep 11 17:42:15 2014 -0300

    drm/i915: Fix regression in the sprite plane update split
Comment 7 Guo Jinxian 2014-09-15 02:33:49 UTC
(In reply to comment #6)
> (In reply to comment #5)
> > Please re-test with the patch.
> 
> Scratch that, please re-test with current nightly that now has
> 
> commit a4aaf755db1804a2c169d41e9b95867637851f9e
> Author: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
> Date:   Thu Sep 11 17:42:15 2014 -0300
> 
>     drm/i915: Fix regression in the sprite plane update split

Test passes on latest -nightly(43df30da20447e2856b2761215ff274886a9f931)


root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./kms_plane --run-subtest plane-position-covered-pipe-A-plane-1
IGT-Version: 1.8-g137877f (x86_64) (Linux: 3.17.0-rc4_drm-intel-nightly_43df30_20140914+ x86_64)
Testing connector eDP-1 using pipe A plane 1
Subtest plane-position-covered-pipe-A-plane-1: SUCCESS (1.257s)
root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# echo $?
0
Comment 8 Elizabeth 2017-10-06 14:35:47 UTC
Closing old verified.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.