Bug 84161 - [ILK Bisected]igt/kms_flip subcases causes "[drm:ilk_display_irq_handler] *ERROR* Pipe A FIFO underrun "
Summary: [ILK Bisected]igt/kms_flip subcases causes "[drm:ilk_display_irq_handler] *ER...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: Other All
: high normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-09-22 06:03 UTC by Guo Jinxian
Modified: 2017-10-06 14:35 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Guo Jinxian 2014-09-22 06:03:13 UTC
==System Environment==
--------------------------
Regression: Yes.

Non-working platforms: ILK

==kernel==
--------------------------
origin/drm-intel-nightly:c5660b4ad395f1e34eacc22cf81c687edfc9c83c(fails)
    drm-intel-nightly: 2014y-09m-19d-18h-12m-22s UTC integration manifest

==Bug detailed description==
-----------------------------
igt/kms_flip subcases causes "[drm:ilk_display_irq_handler] *ERROR* Pipe A FIFO underrun "

Case list:
igt/kms_flip/2x-flip-vs-expired-vblank
igt/kms_flip/2x-flip-vs-expired-vblank-interruptible

==Reproduce steps==
---------------------------- 
1. ./kms_flip --run-subtest 2x-flip-vs-expired-vblank

==Bisect results form [PRTS][auto-bisect]==
----------------------------
commit cf1a5cccaae1ac843b6042178662820f1fb58dea
Author:     Mario Kleiner <mario.kleiner.de@gmail.com>
AuthorDate: Sat Sep 13 18:25:54 2014 +0200
Commit:     Daniel Vetter <daniel.vetter@ffwll.ch>
CommitDate: Mon Sep 15 15:47:19 2014 +0200

    drm: Don't update vblank timestamp when the counter didn't change
    
    If we already have a timestamp for the current vblank counter, don't
    update it with a new timestmap. Small errors can creep in between two
    timestamp queries for the same vblank count, which could be confusing to
    userspace when it queries the timestamp for the same vblank sequence
    number twice.
    
    This problem gets exposed when the vblank disable timer is not used
    (or is set to expire quickly) and thus we can get multiple vblank
    disable<->enable transition during the same frame which would all
    attempt to update the timestamp with the latest estimate.
    
    Testcase: igt/kms_flip/flip-vs-expired-vblank
    Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Reviewed-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    
    v2:Mario: Trivial rebase on top of current drm-next (13-Sep-2014)
    Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Comment 1 Rodrigo Vivi 2014-09-23 00:28:24 UTC
Could you please attach a full dmesg on this one?
Comment 2 Jani Nikula 2014-09-24 07:10:29 UTC
Mario and Daniel do not regard the bisect result as valid:

http://mid.gmane.org/20140923135127.GF15734@phenom.ffwll.local
http://mid.gmane.org/5421806A.4050604@gmail.com
Comment 3 Guo Jinxian 2014-09-29 08:23:42 UTC
The failure unable to reproduce on latest -nightly(7101d84020f63f1da7e0c5d021cdd6be4d515de5)

[root@x-pk5 tests]# ./kms_flip --run-subtest 2x-flip-vs-expired-vblank
IGT-Version: 1.8-g32a0308 (x86_64) (Linux: 3.17.0-rc6_drm-intel-nightly_7101d8_20140929+ x86_64)
Using monotonic timestamps
Test requirement not met in function run_pair, file kms_flip.c:1461:
Test requirement: modes
Subtest 2x-flip-vs-expired-vblank: SKIP (0.085s)
[root@x-pk5 tests]# dmesg -r|egrep "<[1-4]>"|grep drm
[root@x-pk5 tests]#
Comment 4 Elizabeth 2017-10-06 14:35:29 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.