Bug 101635 - [IGT] [HSW/GLK/BSW/BYT/BXT] [regresion] gem_exec_reloc some subtest causes assertion failure
Summary: [IGT] [HSW/GLK/BSW/BYT/BXT] [regresion] gem_exec_reloc some subtest causes as...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: DRI git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL: https://patchwork.freedesktop.org/ser...
Whiteboard: PatchMerged
Keywords: regression
: 101860 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-06-28 21:03 UTC by Humberto Israel Perez Rodriguez
Modified: 2017-07-27 16:57 UTC (History)
2 users (show)

See Also:
i915 platform: BSW/CHT, BXT, BYT, GLK, HSW
i915 features: GEM/execlists


Attachments
dmesg.log (180.55 KB, text/plain)
2017-06-28 21:03 UTC, Humberto Israel Perez Rodriguez
no flags Details
kern.log (277.77 KB, text/plain)
2017-06-28 21:04 UTC, Humberto Israel Perez Rodriguez
no flags Details
output (8.16 KB, text/plain)
2017-07-11 15:22 UTC, Armando Antonio
no flags Details

Description Humberto Israel Perez Rodriguez 2017-06-28 21:03:59 UTC
Created attachment 132320 [details]
dmesg.log

The following test cases assertion failure


notes : this is the same failure with FWs (GUC/HUC/GUC) as without FWs

test output
=========================================================
IGT-Version: 1.19-g9918014 (x86_64) (Linux: 4.12.0-rc7-drm-tip-ww26-commit-85a692e+ x86_64)
(gem_exec_reloc:1502) drmtest-DEBUG: Test requirement passed: !(fd<0)
(gem_exec_reloc:1502) igt-debugfs-DEBUG: Opening debugfs directory '/sys/kernel/debug/dri/0'
(gem_exec_reloc:1502) drmtest-DEBUG: Test requirement passed: drmSetMaster(fd) == 0
(gem_exec_reloc:1502) drmtest-DEBUG: Test requirement passed: is_i915_device(fd) && has_known_intel_chipset(fd)
(gem_exec_reloc:1502) ioctl-wrappers-DEBUG: Test requirement passed: err == 0
(gem_exec_reloc:1502) ioctl-wrappers-DEBUG: Test requirement passed: has_ban_period || has_bannable
(gem_exec_reloc:1502) igt-gt-DEBUG: Test requirement passed: has_gpu_reset(fd)
(gem_exec_reloc:1502) igt-core-DEBUG: Starting subtest: gtt-30
(gem_exec_reloc:1502) intel-os-DEBUG: Checking 2 surfaces of size 1,073,741,824 bytes (total 2,147,487,744) against RAM
(gem_exec_reloc:1502) drmtest-DEBUG: Test requirement passed: !(fd<0)
(gem_exec_reloc:1502) igt-debugfs-DEBUG: Opening debugfs directory '/sys/kernel/debug/dri/0'
(gem_exec_reloc:1502) intel-os-DEBUG: Test requirement passed: __intel_check_memory(count, size, mode, &required, &total)
(gem_exec_reloc:1502) igt-core-DEBUG: Test requirement passed: !igt_run_in_simulation()
(gem_exec_reloc:1502) CRITICAL: Test assertion failure function from_mmap, file gem_exec_reloc.c:175:
(gem_exec_reloc:1502) CRITICAL: Failed assertion: value == obj.offset + max - 1
(gem_exec_reloc:1502) CRITICAL: error: 0x203ffff != 0x1ffffff
Stack trace:
  #0 [__igt_fail_assert+0x101]
  #1 [from_mmap+0x365]
  #2 [__real_main651+0xd65]
  #3 [main+0x33]
  #4 [__libc_start_main+0xf1]
  #5 [_start+0x29]
  #6 [<unknown>+0x29]
Subtest gtt-30 failed.
**** DEBUG ****
(gem_exec_reloc:1502) intel-os-DEBUG: Checking 2 surfaces of size 1,073,741,824 bytes (total 2,147,487,744) against RAM
(gem_exec_reloc:1502) drmtest-DEBUG: Test requirement passed: !(fd<0)
(gem_exec_reloc:1502) igt-debugfs-DEBUG: Opening debugfs directory '/sys/kernel/debug/dri/0'
(gem_exec_reloc:1502) intel-os-DEBUG: Test requirement passed: __intel_check_memory(count, size, mode, &required, &total)
(gem_exec_reloc:1502) igt-core-DEBUG: Test requirement passed: !igt_run_in_simulation()
(gem_exec_reloc:1502) CRITICAL: Test assertion failure function from_mmap, file gem_exec_reloc.c:175:
(gem_exec_reloc:1502) CRITICAL: Failed assertion: value == obj.offset + max - 1
(gem_exec_reloc:1502) CRITICAL: error: 0x203ffff != 0x1ffffff
****  END  ****
Subtest gtt-30: FAIL (87.576s)
(gem_exec_reloc:1502) igt-core-DEBUG: Exiting with status code 99
(gem_exec_reloc:1502) igt-debugfs-DEBUG: Opening debugfs directory '/sys/kernel/debug/dri/0'


======================================
             Software
======================================
architecture                : x86_64
os version                  : Ubuntu 16.10
os codename                 : yakkety
kernel driver               : i915
bios revision               : 50.51
bios release date           : 06/02/2017
ksc                         : 1.32


======================================
        Graphic drivers
======================================
Component: drm
    tag: libdrm-2.4.80-29-g7e6bf88
    commit: 7e6bf88cac315a9fa41818cf72a7b5d18a2cb1fc
Component: cairo
    tag: 1.15.4-28-g57b4050
    commit: 57b40507dda3f58dfc8635548d606b86dc7bcf51
Component: intel-gpu-tools
    tag: intel-gpu-tools-1.18-284-g9918014
    commit: 9918014df55d0393f99a31e3c398a4b38c90bb80
Component: piglit
    tag: piglit-v1
    commit: 1b8356e6dfa07480c154fccb47f6ef9c908ef652


======================================
             Kernel
======================================
commit 85a692e2c6a7cf93082044d776e838cb9e9b2146
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Wed Jun 28 15:25:29 2017 +0100
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Wed Jun 28 15:25:29 2017 +0100


======================================
             Hardware
======================================
platform                   : Geminilake
motherboard model          : Geminilake
motherboard id             : GLKRVP1DDR4(05)
form factor                : Hand Held
manufacturer               : IntelCorp.
cpu family                 : Other
cpu family id              : 6
cpu information            : Genuine Intel(R) CPU @ 1.10GHz
gpu card                   : Intel Corporation Device 3184 (rev 01) (prog-if 00 [VGA controller])
memory ram                 : 3.67 GB
max memory ram             : 16 GB
cpu thread                 : 4
cpu core                   : 4
cpu model                  : 122
cpu stepping               : 0
hard drive                 : 74GiB (80GB)
current cd clock frequency : 79200 kHz
maximum cd clock frequency : 316800 kHz
displays connected         : eDP-1 DP-1 HDMI-A-2

======================================
             Firmware
======================================
dmc fw loaded             : yes
dmc version               : 1.4
guc fw loaded             : SUCCESS
guc version wanted        : 10.56
guc version found         : 10.56

======================================
             kernel parameters
======================================
drm.debug=0x1e i915.alpha_support=1 resume=/dev/sda3 fastboot i915.enable_guc_loading=2 i915.enable_guc_submission=2 log_buf_len=1M

attachments
=======================================
dmesg.log
kern.log



last know good kernel from drm-tip
=========================================
commit 2c9abf8ec88cf4b3d3735976bb0ff7a4991946b2
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Thu Jun 1 14:29:38 2017 +0100
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Thu Jun 1 14:29:38 2017 +0100
Comment 1 Humberto Israel Perez Rodriguez 2017-06-28 21:04:09 UTC
Created attachment 132321 [details]
kern.log
Comment 2 Elizabeth 2017-06-29 15:00:01 UTC
Adding tag into "Whiteboard" field - ReadyForDev
*Status is correct
*Platform is included
*Feature is included
*Priority and Severity correctly set
*Logs included
Comment 3 Chris Wilson 2017-07-07 17:27:16 UTC
https://patchwork.freedesktop.org/series/26847/
Comment 4 Armando Antonio 2017-07-11 15:22:29 UTC
The following test fail on BSW with latest configuration

====================================================
Test list
====================================================
igt@gem_exec_reloc@gtt-28
igt@gem_exec_reloc@gtt-29
igt@gem_exec_reloc@gtt-30


====================================================
Graphic Stack
====================================================
Component: drm
    tag: libdrm-2.4.81-24-g3095cc8
    commit: 3095cc8eaba1aa87ad38c04ae2b1eabe30f7e16c
Component: cairo
    tag: 1.15.6-2-g57b4050
    commit: 57b40507dda3f58dfc8635548d606b86dc7bcf51
Component: intel-gpu-tools
    tag: intel-gpu-tools-1.19-57-g6fcc8e8
    commit: 6fcc8e8b247661c7950b998e0b95141ffbd6b833
Component: piglit
    tag: piglit-v1
    commit: c8f4fd9eeb298a2ef0855927f22634f794ef3eff

======================================
             Hardware
======================================
platform                   : Braswell
motherboard model          : 10G9000NUS
motherboard id             : BRASWELL
form factor                : Desktop
manufacturer               : LENOVO
cpu family                 : Pentium
cpu family id              : 6
cpu information            : Intel(R) Pentium(R) CPU  N3700  @ 1.60GHz
gpu card                   : Intel Corporation Atom/Celeron/Pentium Processor x5-E8000/J3xxx/N3xxx Integrated Graphics Controller (rev 21) (prog-if 00 [VGA controller])
memory ram                 : 7.68 GB
max memory ram             : 8 GB
cpu thread                 : 4
cpu core                   : 4
cpu model                  : 76
cpu stepping               : 3
socket                     : Socket BGA1155
signature                  : Type 0, Family 6, Model 76, Stepping 3
hard drive                 : 476GiB (512GB)
current cd clock frequency : 266667 kHz
maximum cd clock frequency : 320000 kHz
displays connected         : DP-1 DP-3
Comment 5 Armando Antonio 2017-07-11 15:22:47 UTC
Created attachment 132617 [details]
output
Comment 6 Chris Wilson 2017-07-13 19:48:37 UTC
*** Bug 101759 has been marked as a duplicate of this bug. ***
Comment 7 Ricardo Madrigal 2017-07-19 18:43:06 UTC
The following tests fail on BYT with latest configuration

====================================================
Test list
====================================================
igt@gem_exec_reloc@gtt-28
igt@gem_exec_reloc@gtt-29
igt@gem_exec_reloc@gtt-30
igt@gem_exec_reloc@gtt-31

====================================================
Graphic Stack
====================================================
Component: drm
     tag: libdrm-2.4.81-31-g23e234a
     commit: 23e234a3503f51b9d9c585123d33b936f522808d
Component: cairo
    tag: 1.15.6-2-g57b4050
    commit: 57b40507dda3f58dfc8635548d606b86dc7bcf51
Component: intel-gpu-tools
    tag: intel-gpu-tools-1.19-96-gfb1ddc4
    commit: fb1ddc47003ad6a683db79beeb81b6cbab1feb7c
Component: piglit
    tag: piglit-v1
    commit: 56e7e5583cd4a3ca15a8cda154d46d168959dd25

======================================
             Hardware
======================================
motherboard model          : .................................
motherboard id             : DN2820FYK
form factor                : Desktop
manufacturer               : .................................
cpu family                 : Celeron
cpu family id              : 6
cpu information            : Intel(R) Celeron(R) CPU  N2830  @ 2.16GHz
gpu card                   : Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0e) (prog-if 00 [VGA controller])
memory ram                 : 7.66 GB
max memory ram             : 8 GB
cpu thread                 : 2
cpu core                   : 2
cpu model                  : 55
cpu stepping               : 8
socket                     : <OUT OF SPEC>
signature                  : Type 0, Family 6, Model 55, Stepping 8
hard drive                 : 111GiB (120GB)
current cd clock frequency : 266667 kHz
maximum cd clock frequency : 400000 kHz
displays connected         : HDMI-A-1
Comment 8 Chris Wilson 2017-07-20 22:32:04 UTC
*** Bug 101860 has been marked as a duplicate of this bug. ***
Comment 9 Ricardo Madrigal 2017-07-21 21:10:18 UTC
The following tests fail on APL with latest configuration

====================================================
Test list
====================================================
igt@gem_exec_reloc@gtt-28
igt@gem_exec_reloc@gtt-29
igt@gem_exec_reloc@gtt-30
igt@gem_exec_reloc@gtt-31
igt@gem_exec_reloc@gtt-32

====================================================
Graphic Stack
====================================================
Component: drm
    tag: libdrm-2.4.81-27-gac21401
    commit: ac214017904b31bc5f80f802d748d5f4f3149d22

Component: cairo
    tag: 1.15.6-2-g57b4050
    commit: 57b40507dda3f58dfc8635548d606b86dc7bcf51

Component: intel-gpu-tools
    tag: intel-gpu-tools-1.19-88-ga844ccb
    commit: a844ccbdbab9fd16c37de81281c6281bc800e97a

Component: piglit
    tag: piglit-v1
    commit: 8717219b07c0cf2853540c373725a23654467d45


======================================
             Hardware
======================================
motherboard model          : NUC6CAYS
motherboard id             : NUC6CAYB
form factor                : Desktop
manufacturer               : Intelcorporation
cpu family                 : Celeron
cpu family id              : 6
cpu information            : Intel(R) Celeron(R) CPU J3455 @ 1.50GHz
gpu card                   : Intel Corporation Device 5a85 (rev 0b) (prog-if 00 [VGA controller])
memory ram                 : 15.54 GB
max memory ram             : 32 GB
cpu thread                 : 4
cpu core                   : 4
cpu model                  : 92
cpu stepping               : 9
socket                     : Other
signature                  : Type 0, Family 6, Model 92, Stepping 9
hard drive                 : 279GiB (300GB)
current cd clock frequency : 288000 kHz
maximum cd clock frequency : 624000 kHz
displays connected         : DP-1 DP-2
Comment 10 Chris Wilson 2017-07-26 10:49:06 UTC
commit edf9f2d31231c6ae2a4e621ef67c68758ddc447d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Fri Jul 21 15:50:36 2017 +0100

    drm/i915: Only skip updating execobject.offset after error
    
    I was being overly paranoid in not updating the execobject.offset after
    performing the fallback copy where we set reloc.presumed_offset to -1.
    The thinking was to ensure that a subsequent NORELOC execbuf would be
    forced to process the invalid relocations. However this is overkill so
    long as we *only* update the execobject.offset following a successful
    update of the relocation value witin the batch. If we have to repeat the
    execbuf due to a later interruption, then we may skip the relocations on
    the second pass (honouring NORELOC) since the execobject.offset match
    the actual offsets (even though reloc.presumed_offset is garbage).
    
    Subsequent calls to execbuf with NORELOC should themselves ensure that
    the reloc.presumed_offset have been corrected in case of future
    migration.
    
    Reporting back the actual execobject.offset, even when
    reloc.presumed_offset is garbage, ensures that reuse of those objects
    use the latest information to avoid relocations.
    
    Fixes: 2889caa92321 ("drm/i915: Eliminate lots of iterations over the execobjects array")
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101635
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
    Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20170721145037.25105-4-chris@chris-wilson.co.uk
    Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>


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.