Bug 89494 - [all]igt/gem_wait/render_timeout fail
Summary: [all]igt/gem_wait/render_timeout fail
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: DRI git
Hardware: Other All
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL: http://patchwork.freedesktop.org/patc...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-03-09 06:56 UTC by Ding Heng
Modified: 2017-10-06 14:31 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (113.67 KB, text/plain)
2015-03-09 06:56 UTC, Ding Heng
no flags Details
dmesg on commit 762e45 (118.09 KB, text/plain)
2015-03-12 01:51 UTC, Ding Heng
no flags Details
dmesg on nightly-2015-03-12 (113.16 KB, text/plain)
2015-03-12 02:07 UTC, Ding Heng
no flags Details

Description Ding Heng 2015-03-09 06:56:41 UTC
Created attachment 114143 [details]
dmesg

==System Environment==
--------------------------
Non-working platforms: ILK
Regression :No, I didn't find find a good commit.
==kernel==
--------------------------
origin/drm-intel-nightly: c2f6e584b215dd0d7e5a8a02716a89e985366ec0(2015-03-08) 


==Bug detailed description==
-----------------------------

[root@x-pk5 tests]# ./gem_wait --run-subtest render_timeout
IGT-Version: 1.9-g07be8fe (x86_64) (Linux: 4.0.0-rc2_drm-intel-nightly_fd3701_20150305+ x86_64)
^[[A2048 iters is enough work
Finished with 545667483 time remaining
Test assertion failure function render_timeout, file gem_wait.c:217:
Failed assertion: gem_bo_wait_timeout(fd, dst2->handle, &negative_timeout) == 0
Last errno: 62, Timer expired
error: -62 != 0
Subtest render_timeout failed.
**** DEBUG ****
Test requirement passed: !igt_run_in_simulation()
Test requirement passed: !(gem_bo_wait_timeout(fd, dst->handle, &timeout) == -EINVAL)
2048 iters is enough work
Finished with 545667483 time remaining
Test assertion failure function render_timeout, file gem_wait.c:217:
Failed assertion: gem_bo_wait_timeout(fd, dst2->handle, &negative_timeout) == 0
Last errno: 62, Timer expired
error: -62 != 0
****  END  ****
Subtest render_timeout: FAIL (12.280s)
Received signal SIGTERM.

This case passed when it was run by piglit. But when I switch to the same kernel and run the same case manually, it fails.


==Reproduce steps==
---------------------------- 
1. ./gem_wait --run-subtest render_timeout
Comment 1 Chris Wilson 2015-03-09 09:56:27 UTC
http://patchwork.freedesktop.org/patch/43961/
Comment 2 Jani Nikula 2015-03-10 17:03:51 UTC
Fixed by

commit 762e45836a047323defe9bdbbac534f0675ff027
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Mar 4 18:09:26 2015 +0000

    drm/i915: Make WAIT_IOCTL negative timeouts be indefinite again

in drm-intel-fixes, thanks for the report.
Comment 3 Ding Heng 2015-03-11 03:17:38 UTC
(In reply to Chris Wilson from comment #1)
> http://patchwork.freedesktop.org/patch/43961/

This patch has been seen in nightly latest branch, but the issue still exist.
Comment 4 Ding Heng 2015-03-11 03:18:34 UTC
(In reply to Jani Nikula from comment #2)
> Fixed by
> 
> commit 762e45836a047323defe9bdbbac534f0675ff027
> Author: Chris Wilson <chris@chris-wilson.co.uk>
> Date:   Wed Mar 4 18:09:26 2015 +0000
> 
>     drm/i915: Make WAIT_IOCTL negative timeouts be indefinite again
> 
> in drm-intel-fixes, thanks for the report.

This issue still exist on this commit. Reopen.
Comment 5 Chris Wilson 2015-03-11 08:26:37 UTC
Well then, update the log outputs...
Comment 6 Ding Heng 2015-03-12 01:51:19 UTC
Created attachment 114236 [details]
dmesg on commit 762e45
Comment 7 Ding Heng 2015-03-12 02:07:23 UTC
Created attachment 114237 [details]
dmesg on nightly-2015-03-12
Comment 8 lu hua 2015-03-17 07:39:07 UTC
It impacts i965 platforms.
Comment 9 Chris Wilson 2015-03-17 09:20:25 UTC
And the actual test output.
Comment 10 lu hua 2015-03-19 05:32:02 UTC
It fails on all platforms. 
output on PNV:
[root@x-pnv2 tests]# ./gem_wait --run-subtest render_timeout
IGT-Version: 1.9-gf59935c (i686) (Linux: 4.0.0-rc4_drm-intel-nightly_3753ea_20150318+ i686)
2048 iters is enough work
Finished with 220664141 time remaining
Test assertion failure function render_timeout, file gem_wait.c:218:
Failed assertion: negative_timeout == 0
Last errno: 62, Timer expired
error: -1 != 0
Subtest render_timeout failed.
**** DEBUG ****
Test requirement passed: !igt_run_in_simulation()
Test requirement passed: !(gem_bo_wait_timeout(fd, dst->handle, &timeout) == -EINVAL)
2048 iters is enough work
Finished with 220664141 time remaining
Test assertion failure function render_timeout, file gem_wait.c:218:
Failed assertion: negative_timeout == 0
Last errno: 62, Timer expired
error: -1 != 0
****  END  ****
Subtest render_timeout: FAIL (28.735s)
Received signal SIGTERM.
Comment 11 Chris Wilson 2015-03-19 08:38:52 UTC
commit ea4aa70f3c83a942ee34868ade1eba126b15d879
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Thu Mar 19 08:36:25 2015 +0000

    igt/gem_wait: When waiting for infinity, an infinity remains
    
    Incorrect testing of out parameters leads to bug noise...
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89494#c4
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Comment 12 Ding Heng 2015-03-20 02:03:50 UTC
(In reply to Chris Wilson from comment #11)
> commit ea4aa70f3c83a942ee34868ade1eba126b15d879
> Author: Chris Wilson <chris@chris-wilson.co.uk>
> Date:   Thu Mar 19 08:36:25 2015 +0000
> 
>     igt/gem_wait: When waiting for infinity, an infinity remains
>     
>     Incorrect testing of out parameters leads to bug noise...
>     
>     Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89494#c4
>     Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

Case pass on  this igt commit. Change state to verified.
Comment 13 lu hua 2015-03-24 05:38:27 UTC
It also fails on 3.19.2 kernel.
Comment 14 Chris Wilson 2015-03-24 09:01:33 UTC
It will take some time for the patch to percolate back through stable kernels.
Comment 15 Elizabeth 2017-10-06 14:31:13 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.