Bug 100585 - [BXT/GLK/KBL/BDW/BSW]gem_mmap/swap-bo causing page allocation failure
Summary: [BXT/GLK/KBL/BDW/BSW]gem_mmap/swap-bo causing page allocation failure
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: Elio
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-04-05 16:34 UTC by Elio
Modified: 2017-07-05 19:10 UTC (History)
1 user (show)

See Also:
i915 platform: BDW, BSW/CHT, BXT, GLK, KBL
i915 features: GEM/Other


Attachments
dmesg log (115.47 KB, text/plain)
2017-04-05 16:34 UTC, Elio
no flags Details

Description Elio 2017-04-05 16:34:00 UTC
Created attachment 130700 [details]
dmesg log

The following test is failing "gem_mmap@swap-bo" causing a page allocation failure:

Reproduce steps:

1.-Install IGT tools
2.-Execute $./sudo -E ./gem_mmap --run-subtest

Expected results:

The test should pass

Actual Result: fail

Output:

IGT-Version: 1.18-g56741ce (x86_64) (Linux: 4.11.0-rc5-drm-tip-qa-ww14-commit-5bc82ec+ x86_64)
(gem_mmap:1613) ioctl-wrappers-CRITICAL: Test assertion failure function gem_set_domain, file ioctl_wrappers.c:435:
(gem_mmap:1613) ioctl-wrappers-CRITICAL: Failed assertion: __gem_set_domain(fd, handle, read, write) == 0
(gem_mmap:1613) ioctl-wrappers-CRITICAL: Last errno: 12, Cannot allocate memory
(gem_mmap:1613) ioctl-wrappers-CRITICAL: error: -12 != 0
Stack trace:
  #0 [__igt_fail_assert+0x101]
  #1 [gem_set_domain+0x44]
  #2 [test_huge_bo+0xe8]
  #3 [__real_main119+0x386]
  #4 [main+0x33]
  #5 [__libc_start_main+0xf1]
  #6 [_start+0x29]
  #7 [<unknown>+0x29]
Subtest swap-bo failed.
**** DEBUG ****
(gem_mmap:1613) intel-os-DEBUG: Checking 1 surfaces of size 1,939,865,600 bytes (total 1,939,869,696) against RAM + swap
(gem_mmap:1613) drmtest-DEBUG: Test requirement passed: !(fd<0)
(gem_mmap:1613) igt-debugfs-DEBUG: Opening debugfs directory '/sys/kernel/debug/dri/0'
(gem_mmap:1613) intel-os-DEBUG: Test requirement passed: __intel_check_memory(count, size, mode, &required, &total)
(gem_mmap:1613) igt-core-DEBUG: Test requirement passed: !igt_run_in_simulation()
(gem_mmap:1613) DEBUG: Test requirement passed: ptr_cpu
(gem_mmap:1613) ioctl-wrappers-CRITICAL: Test assertion failure function gem_set_domain, file ioctl_wrappers.c:435:
(gem_mmap:1613) ioctl-wrappers-CRITICAL: Failed assertion: __gem_set_domain(fd, handle, read, write) == 0
(gem_mmap:1613) ioctl-wrappers-CRITICAL: Last errno: 12, Cannot allocate memory
(gem_mmap:1613) ioctl-wrappers-CRITICAL: error: -12 != 0
****  END  ****
Subtest swap-bo: FAIL (0.915s)


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 Chris Wilson 2017-04-05 16:50:23 UTC
Yes, it will. That's a known limitation.
Comment 2 maria guadalupe 2017-04-05 21:55:45 UTC
this issue is also present over GLK with the next configuration 

test
======================================
igt@gem_mmap@swap-bo


======================================
             Software
======================================
kernel version            : 4.10.0-rc7-drm-intel-testing-qa-ww14-commit-5b28e02+
architecture              : x86_64
os version                : Ubuntu 16.10
os codename               : yakkety

======================================
        Graphic drivers
======================================
modesetting               : modesetting_drv.so
xorg-xserver              : 1.18.4
libdrm                    : 2.4.76
cairo                     : 1.15.5
xserver                   : X.Org X Server 1.18.4
intel-gpu-tools (tag)     : intel-gpu-tools-1.18-56-g56741ce
intel-gpu-tools (commit)  : 56741ce

======================================
             Hardware
======================================
platform                  : Geminilake
motherboard model         : Geminilake
motherboard id            : GLKRVP1DDR4(05)
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])
max memory ram            : 16 GB
cpu model                 : 122
Comment 3 Humberto Israel Perez Rodriguez 2017-05-24 22:33:52 UTC
same issue with KBL and latest configuration

test cases
============================================
igt@gem_mmap@swap-bo
igt@gem_mmap_gtt@swap-copy-xy
igt@gem_mmap_gtt@swap-copy
igt@gem_mmap_gtt@swap-copy-odd



Component: drm
    tag: libdrm-2.4.80-15-geeb51df
    commit: eeb51df3ced003515ba4a71492eeb86c145cb77e

Component: cairo
    tag: 1.15.4-21-g9d44136
    commit: 9d44136ef8e2a1ad2c6631beb4bbdaeed7a2dad8

Component: intel-gpu-tools
    tag: intel-gpu-tools-1.18-209-g26c266f
    commit: 26c266febe1fc97c46d25a33aaf6a1869a51c008

Component: piglit
    tag: piglit-v1
    commit: 9cc5b2169ab6eb8a6a09329836d8d884d4350eec


======================================
             Software
======================================
kernel version              : 4.12.0-rc2-drm-tip-ww21-commit-7808a0f+
architecture                : x86_64
os version                  : Ubuntu 16.10
os codename                 : yakkety
kernel driver               : i915
bios revision               : 5.6
bios release date           : 05/03/2017
ksc                         : 8.1

======================================
             Hardware
======================================
motherboard id             : NUC7i5BNB
form factor                : Desktop
cpu family                 : Core i5
cpu family id              : 6
cpu information            : Intel(R) Core(TM) i5-7260U CPU @ 2.20GHz
gpu card                   : Intel Corporation Device 5926 (rev 06) (prog-if 00 [VGA controller])
memory ram                 : 15.58 GB
max memory ram             : 32 GB
cpu thread                 : 4
cpu core                   : 2
cpu model                  : 142
cpu stepping               : 9
socket                     : Other
signature                  : Type 0, Family 6, Model 142, Stepping 9
hard drive                 : 447GiB (480GB)
current cd clock frequency : 337500 kHz
maximum cd clock frequency : 675000 kHz
displays connected         : DP-1 DP-2

======================================
             Firmware
======================================
dmc fw loaded             : yes
dmc version               : 1.1
guc fw loaded             : NONE
guc version wanted        : 0.0
guc version found         : 0.0
Comment 4 Humberto Israel Perez Rodriguez 2017-05-30 19:37:21 UTC
same issue on BDW with latest configuration

igt@gem_mmap@swap-bo


Software versions
=======================================
Component: drm
    tag: libdrm-2.4.80-18-gce9e3ba
    commit: ce9e3ba6e2cc65e1e9e6e05a5f326c4dd25ab2c4

Component: cairo
    tag: 1.15.4-22-g0fd0fd0
    commit: 0fd0fd0ae9ad8cfb177bb844091de98c0235917e

Component: intel-gpu-tools
    tag: intel-gpu-tools-1.18-211-g00ce341
    commit: 00ce341b95c718611689ded8ccec45086186c5b7

Component: piglit
    tag: piglit-v1
    commit: ebbb9c5dcc6a637884d54e06eb430a8c14993413

	
Kernel version
=========================================
commit 75397b60fe84eb5125a78a5ee304def86b761994
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Tue May 30 12:56:32 2017 +0100
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Tue May 30 12:56:32 2017 +0100

    drm-tip: 2017y-05m-30d-11h-55m-42s UTC integration manifest
Comment 5 Humberto Israel Perez Rodriguez 2017-05-31 16:54:39 UTC
same issue on BSW with latest configuration

igt@gem_mmap@swap-bo


Component: drm
    tag: libdrm-2.4.80-18-gce9e3ba
    commit: ce9e3ba6e2cc65e1e9e6e05a5f326c4dd25ab2c4

Component: cairo
    tag: 1.15.4-22-g0fd0fd0
    commit: 0fd0fd0ae9ad8cfb177bb844091de98c0235917e

Component: intel-gpu-tools
    tag: intel-gpu-tools-1.18-211-g00ce341
    commit: 00ce341b95c718611689ded8ccec45086186c5b7

Component: piglit
    tag: piglit-v1
    commit: ebbb9c5dcc6a637884d54e06eb430a8c14993413

kernel
===================================================
commit 4aa1d46d3b24bbe545cdf7cbd407c18f5cd5e43d
Author:     Daniel Vetter <daniel.vetter@ffwll.ch>
AuthorDate: Wed May 31 10:59:05 2017 +0200
Commit:     Daniel Vetter <daniel.vetter@ffwll.ch>
CommitDate: Wed May 31 10:59:05 2017 +0200

    drm-tip: 2017y-05m-31d-08h-58m-36s UTC integration manifest
Comment 6 Jari Tahvanainen 2017-06-05 13:14:24 UTC
Chris - you said that this is known limitation. So are you saying that one can use ~95% of memory successfully with this gem_mmap@swap-bo case? If huge object is bigger than that then i915 (or kernel) mm fails?

On my dev-HSW I found out that the following is the limit (90% of repetitions the case if pass):
Subtest swap-bo failed.
**** DEBUG ****
(gem_mmap:25393) intel-os-DEBUG: Checking 1 surfaces of size 15 985 541 120 bytes (total 15 985 545 216) against RAM + swap
(gem_mmap:25393) drmtest-DEBUG: Test requirement passed: !(fd<0)
(gem_mmap:25393) igt-debugfs-DEBUG: Opening debugfs directory '/sys/kernel/debug/dri/0'
(gem_mmap:25393) intel-os-DEBUG: Test requirement passed: __intel_check_memory(count, size, mode, &required, &total)
(gem_mmap:25393) igt-core-DEBUG: Test requirement passed: !igt_run_in_simulation()
(gem_mmap:25393) DEBUG: Exercising 15 985 541 120 bytes
(gem_mmap:25393) DEBUG: Total_ram 16 589 520 896 bytes
Comment 7 Chris Wilson 2017-06-14 10:01:00 UTC
commit eaf41801559a687cc7511c04dc712984765c9dd7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Fri Jun 9 12:03:47 2017 +0100

    drm/i915: Remove __GFP_NORETRY from our buffer allocator
Comment 8 Elizabeth 2017-06-16 21:29:25 UTC
In order to be able to close this bug, please test and share results. Thank you.


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.