Bug 100589 - [BXT/SKL]gem_mmap_gtt/copy* are killiing process, out of memory
Summary: [BXT/SKL]gem_mmap_gtt/copy* are killiing process, out of memory
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:
Whiteboard: ReadyForDev
Keywords:
Depends on:
Blocks:
 
Reported: 2017-04-05 18:57 UTC by Elio
Modified: 2017-07-24 23:15 UTC (History)
1 user (show)

See Also:
i915 platform: BXT
i915 features: GEM/PPGTT


Attachments
dmesg log (126.30 KB, text/plain)
2017-04-05 18:57 UTC, Elio
no flags Details

Description Elio 2017-04-05 18:57:00 UTC
Created attachment 130706 [details]
dmesg log

The following test cases are following showing "out of memory"

gme_mmap_gtt@swap-copy
gem_mmap_gtt@swap-copy-odd
gem_mmap_gtt@swap-copy-xy

Steps to reproduce:

1. install IGT
2. execute $ sudo -E ./gem_mmap_gtt --run-subtest copy
                                                  copy-xy
                                                  copy-odd

Expected result:

Test should pass

Actual results: Fail

Output:

IGT-Version: 1.18-g56741ce (x86_64) (Linux: 4.11.0-rc5-drm-tip-qa-ww14-commit-5bc82ec+ x86_64)
Writing a 100%
child 0 died with signal 9, Killed
Subtest swap-copy failed.
**** DEBUG ****
(gem_mmap_gtt:1552) intel-os-DEBUG: Checking 2 surfaces of size 969,412,608 bytes (total 1,938,829,312) against RAM + swap
(gem_mmap_gtt:1552) drmtest-DEBUG: Test requirement passed: !(fd<0)
(gem_mmap_gtt:1552) igt-debugfs-DEBUG: Opening debugfs directory '/sys/kernel/debug/dri/0'
(gem_mmap_gtt:1552) intel-os-DEBUG: Test requirement passed: __intel_check_memory(count, size, mode, &required, &total)
(gem_mmap_gtt:1552) igt-core-DEBUG: Test requirement passed: !igt_run_in_simulation()
****  END  ****
Subtest swap-copy: FAIL (1.894s)

Configuration:

Configuration:

Kernel version:
4.11.0-rc5   commit-5bc82ec

Component         : drm
	url       : http://cgit.freedesktop.org/mesa/drm
	tag       : libdrm-2.4.76-16-g6312017
	commit    : 6312017
	author    : Emil Velikov <emil.l.velikov@gmail.com>
	age       : Mon Apr 3 18:01:49 2017 +0100 7 hours ago
	comment   : configure.ac: bring back pthread-stubs check


Component         : mesa
	url       : http://cgit.freedesktop.org/mesa/mesa
	tag       : 17.0-branchpoint-2397-g405ef7b
	commit    : 405ef7b
	author    : Jason Ekstrand <jason@jlekstrand.net>
	age       : Mon Apr 3 16:58:35 2017 -0700 30 minutes ago
	comment   : intel/vec4: Add some fall through comments



Component         : xf86-video-intel
	url       : http://cgit.freedesktop.org/xorg/driver/xf86-video-intel
	tag       : 2.99.917-770-gcb6ba2d
	commit    : cb6ba2d
	author    : Chris Wilson <chris@chris-wilson.co.uk>
	age       : Sat Mar 25 01:21:46 2017 +0000 10 days ago

Component         : libva
	url       : http://cgit.freedesktop.org/libva
	tag       : libva-1.7.3.pre1-85-gefc164d
	commit    : efc164d
	author    : Xiang Haihao <haihao.xiang@intel.com>
	age       : Tue Mar 7 23:42:43 2017 +0800 4 weeks ago
	comment   : Bump libva to 1.8.1.pre1 for development


Component         : intel-driver
	url       : http://cgit.freedesktop.org/vaapi/intel-driver
	tag       : 1.7.3-359-g437cbe0
	commit    : 437cbe0
	author    : Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
	age       : Wed Mar 29 08:29:46 2017 +0800 6 days ago
	comment   : gen8: accept P010 as valid format



Component         : cairo
	url       : http://cgit.freedesktop.org/cairo
	tag       : 1.15.4-11-gcffa452
	commit    : cffa452
	author    : Debarshi Ray <debarshir@freedesktop.org>
	age       : Wed Mar 15 20:26:22 2017 -0700 3 weeks ago
	comment   : doc: Clarify when the device scale is inherited and when 
Component         : xserver
	url       : http://cgit.freedesktop.org/xorg/xserver
	tag       : xorg-server-1.19.0-184-ge4d0757
	commit    : e4d0757
	author    : Adam Jackson <ajax@redhat.com>
	age       : Thu Mar 30 11:32:02 2017 -0400 4 days ago
	comment   : xfree86: Remove driver entity hooks and private



Component         : macros
	url       : https://cgit.freedesktop.org/xorg/util/macros
	tag       : util-macros-1.19.1-2-g39f07f7
	commit    : 39f07f7
	author    : Emil Velikov <emil.veliko@collabora.com>
	age       : Mon Feb 20 10:16:40 2017 +1000 6 weeks ago
	comment   : Rework INSTALL_CMD to touch/echo >&2 only as needed



Component         : intel-gpu-tools
	url       : https://cgit.freedesktop.org/xorg/app/intel-gpu-tools
	tag       : intel-gpu-tools-1.18-56-g56741ce
	commit    : 56741ce
	author    : Chris Wilson <chris@chris-wilson.co.uk>
	age       : Mon Apr 3 19:19:42 2017 +0100 6 hours ago
	comment   : tests/gem_media_fill: Fixup typo



Component         : piglit
	url       : https://cgit.freedesktop.org/piglit
	tag       : piglit-v1
	commit    : 3d1cbd9
	author    : Vinson Lee <vlee@freedesktop.org>
	age       : Mon Apr 3 15:46:33 2017 -0700 2 hours ago
	comment   : glslparsertest: Add test case for FDO bug #100438.
Comment 1 Jairo Miramontes 2017-04-05 23:38:37 UTC
Also seen on SKL with the below configuration

============== SOFTWARE =========================
Component         : drm
	tag       : libdrm-2.4.76-16-g6312017
	commit    : 6312017 

Component         : cairo
	tag       : 1.15.4-11-gcffa452
	commit    : cffa452 

Component         : intel-gpu-tools
	tag       : intel-gpu-tools-1.18-56-g56741ce
	commit    : 56741ce 



============== KERNEL INFO =========================
commit bf30bc2a70b83a77ba63436023f3550083715c56
Author: Daniel Stone <daniels@collabora.com>
Date:   Tue Apr 4 21:01:18 2017 +0100

    drm-tip: 2017y-04m-04d-20h-00m-56s UTC integration manifest


Kernel version : 4.11.0-rc5-bf30bc2
Architecture : source amd64 all
Comment 2 Chris Wilson 2017-04-06 12:06:06 UTC
commit b268d9fe0f10544f5f7a1b7015e2b97075e6215d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Apr 5 23:15:14 2017 +0100

    drm/i915: Use the right mapping_gfp_mask for final shmem allocation
    
    Many sightings report the greater prevalence of allocation failures.
    This is all due to the incorrect use of mapping_gfp_constraint(), so
    remove it in favour of just querying the mapping_gfp_mask() which are
    the exact gfp_t we wanted in the first place.
    
    We still do expect a higher chance of reporting ENOMEM, as that is the
    intention of using __GFP_NORETRY -- to fail rather than oom after having
    reclaimed from our bo caches, and having done a direct|kswapd reclaim
    pass.
Comment 3 Humberto Israel Perez Rodriguez 2017-05-30 19:30:52 UTC
(In reply to Chris Wilson from comment #2)
> commit b268d9fe0f10544f5f7a1b7015e2b97075e6215d
> Author: Chris Wilson <chris@chris-wilson.co.uk>
> Date:   Wed Apr 5 23:15:14 2017 +0100
> 
>     drm/i915: Use the right mapping_gfp_mask for final shmem allocation
>     
>     Many sightings report the greater prevalence of allocation failures.
>     This is all due to the incorrect use of mapping_gfp_constraint(), so
>     remove it in favour of just querying the mapping_gfp_mask() which are
>     the exact gfp_t we wanted in the first place.
>     
>     We still do expect a higher chance of reporting ENOMEM, as that is the
>     intention of using __GFP_NORETRY -- to fail rather than oom after having
>     reclaimed from our bo caches, and having done a direct|kswapd reclaim
>     pass.

Hi Chris Wilson, in the latest commits from drm-tip this patch is not integrated kernel (4.12)
Comment 4 Chris Wilson 2017-07-05 16:29:24 UTC
(In reply to Humberto Israel Perez Rodriguez from comment #3)
> (In reply to Chris Wilson from comment #2)
> > commit b268d9fe0f10544f5f7a1b7015e2b97075e6215d
> > Author: Chris Wilson <chris@chris-wilson.co.uk>
> > Date:   Wed Apr 5 23:15:14 2017 +0100
> > 
> >     drm/i915: Use the right mapping_gfp_mask for final shmem allocation
> >     
> >     Many sightings report the greater prevalence of allocation failures.
> >     This is all due to the incorrect use of mapping_gfp_constraint(), so
> >     remove it in favour of just querying the mapping_gfp_mask() which are
> >     the exact gfp_t we wanted in the first place.
> >     
> >     We still do expect a higher chance of reporting ENOMEM, as that is the
> >     intention of using __GFP_NORETRY -- to fail rather than oom after having
> >     reclaimed from our bo caches, and having done a direct|kswapd reclaim
> >     pass.
> 
> Hi Chris Wilson, in the latest commits from drm-tip this patch is not
> integrated kernel (4.12)

Pardon?


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.