Bug 75146

Summary: [SNB/IVB/BDW]igt/pm_rps/min-max-config-loaded fails
Product: DRI Reporter: lu hua <huax.lu>
Component: DRM/IntelAssignee: Ville Syrjala <ville.syrjala>
Status: CLOSED FIXED QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: normal    
Priority: medium CC: intel-gfx-bugs
Version: unspecified   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg(nightly)
none
dmesg about min-max-config-idle failed none

Description lu hua 2014-02-18 08:54:06 UTC
Created attachment 94271 [details]
dmesg(nightly)

System Environment:
--------------------------
Platform: Sandybridge
kernel:   (drm-intel-nightly)1be8f2b4dd6d3db00af24d4891c82d2650bd282d

Bug detailed description:
---------------------------
New case pm_rps/min-max-config-loaded aborted on Sandybridge with -queued and -nightly kernel. It fails on -fixes kernel.

output on -nightly kernel:
IGT-Version: 1.5-g9597836 (i686) (Linux: 3.13.0_drm-intel-nightly_1be8f2_20140218+ i686)
Test assertion failure function loaded_check, file pm_rps.c:460:
Last errno: 22, Invalid argument
Failed assertion: freqs[CUR] == freqs[MAX]
Subtest min-max-config-loaded: FAIL
Test assertion failure function igt_wait_helper, file drmtest.c:1279:
Last errno: 10, No child processes
Failed assertion: WIFEXITED(status) && WEXITSTATUS(status) == 0
pm_rps: drmtest.c:1113: igt_fail: Assertion `!test_with_subtests || in_fixture' failed.
Aborted (core dumped)

output on -fixes knernel:
IGT-Version: 1.5-g9597836 (x86_64) (Linux: 3.13.0-rc8_drm-intel-fixes_f51a44_20140218+ x86_64)
Test assertion failure function loaded_check, file pm_rps.c:460:
Last errno: 2, No such file or directory
Failed assertion: freqs[CUR] == freqs[MAX]
Subtest min-max-config-loaded: FAIL


Reproduce steps:
---------------------------- 
1. ./pm_rps --run-subtest min-max-config-loaded
Comment 1 Daniel Vetter 2014-03-03 14:37:06 UTC
Does the below igt patch help? Please attach the new output if it still fails ...

diff --git a/tests/pm_rps.c b/tests/pm_rps.c
index a652cf580dc7..fd72ecad735d 100644
--- a/tests/pm_rps.c
+++ b/tests/pm_rps.c
@@ -439,7 +439,7 @@ static void idle_check(void)
 }
 
 #define LOADED_WAIT_TIMESTEP_MSEC 100
-#define LOADED_WAIT_TIMEOUT_MSEC 3000
+#define LOADED_WAIT_TIMEOUT_MSEC 10000
 static void loaded_check(void)
 {
        int freqs[NUMFREQ];
@@ -457,7 +457,7 @@ static void loaded_check(void)
                wait += LOADED_WAIT_TIMESTEP_MSEC;
        } while (wait < LOADED_WAIT_TIMEOUT_MSEC);
 
-       igt_assert(freqs[CUR] == freqs[MAX]);
+       igt_assert_f(freqs[CUR] == freqs[MAX], "cur: %i, max: %i\n", freqs[CUR], freqs[MAX]);
        igt_debug("Required %d msec to reach cur=max\n", wait);
 }
Comment 2 lu hua 2014-03-04 03:34:43 UTC
Test this igt patch.
output:
IGT-Version: 1.5-g072d358 (i686) (Linux: 3.14.0-rc5_drm-intel-nightly_2bbdb4_20140304+ i686)
Test assertion failure function loaded_check, file pm_rps.c:460:
Last errno: 22, Invalid argument
Failed assertion: freqs[CUR] == freqs[MAX]
cur: 850, max: 1100
Subtest min-max-config-loaded: FAIL
Test assertion failure function igt_wait_helper, file drmtest.c:1279:
Last errno: 10, No child processes
Failed assertion: WIFEXITED(status) && WEXITSTATUS(status) == 0
pm_rps: drmtest.c:1113: igt_fail: Assertion `!test_with_subtests || in_fixture' failed.
Aborted (core dumped)
Comment 3 lu hua 2014-03-12 03:08:39 UTC
It also fails on Ivybridge and Haswell.
Subcase min-max-config-idle and reset also fail.
Comment 4 Daniel Vetter 2014-03-14 09:28:38 UTC
Should be fixed in latest i-g-t:

commit 5632bc81d944ae5070c403688b995ff583bb1ac7
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Fri Mar 14 10:26:39 2014 +0100

    tests/pm_rps: load harder
Comment 5 lu hua 2014-03-17 05:13:52 UTC
It still fails BDW, file Bug 76247 to trace new platform.
Verified.Fixed on SNB/IVB/HSW.
Comment 6 Guo Jinxian 2014-03-31 08:33:02 UTC
Subcase min-max-config-idle still failed on latest -nightly(19f629e96704b796efdad3cf13b1e8fb387d8ca7)

[root@x-ivb9 tests]# ./pm_rps --run-subtest min-max-config-idle
IGT-Version: 1.6-g4fdca96 (x86_64) (Linux: 3.14.0-rc8_drm-intel-nightly_19f629_20140331_debug+ x86_64)
Test assertion failure function idle_check, file pm_rps.c:443:
Last errno: 22, Invalid argument
Failed assertion: freqs[CUR] == freqs[MIN]
error: 650 == 350
Subtest min-max-config-idle: FAIL
Comment 7 Guo Jinxian 2014-03-31 08:33:35 UTC
Created attachment 96642 [details]
dmesg about min-max-config-idle failed
Comment 8 Guo Jinxian 2014-03-31 08:36:41 UTC
(In reply to comment #6)
> Subcase min-max-config-idle still failed on latest
> -nightly(19f629e96704b796efdad3cf13b1e8fb387d8ca7)
> 
> [root@x-ivb9 tests]# ./pm_rps --run-subtest min-max-config-idle
> IGT-Version: 1.6-g4fdca96 (x86_64) (Linux:
> 3.14.0-rc8_drm-intel-nightly_19f629_20140331_debug+ x86_64)
> Test assertion failure function idle_check, file pm_rps.c:443:
> Last errno: 22, Invalid argument
> Failed assertion: freqs[CUR] == freqs[MIN]
> error: 650 == 350
> Subtest min-max-config-idle: FAIL

The failure occurred on IVB platform
Comment 9 Daniel Vetter 2014-04-11 16:26:40 UTC
Ah, that was the broken gpu turbo. Should be fix now with latest -nightly and -fixes.
Comment 10 lu hua 2014-04-14 07:34:24 UTC
Verified.Fixed.
Comment 11 Elizabeth 2017-10-06 14:39:48 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.