Bug 102561 - [BAT][GDG] igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy triggers a kernel BUG
Summary: [BAT][GDG] igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy trigger...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg git
Hardware: Other All
: high critical
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard: ReadyForDev
Keywords:
Depends on:
Blocks:
 
Reported: 2017-09-06 14:10 UTC by Martin Peres
Modified: 2017-09-07 07:43 UTC (History)
1 user (show)

See Also:
i915 platform: I915GM
i915 features:


Attachments

Description Martin Peres 2017-09-06 14:10:03 UTC
On CI_DRM_3045, the machine fi-gdg-551 produced the following error and hanged when executing igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:

[  212.492603] ------------[ cut here ]------------
[  212.492667] kernel BUG at drivers/gpu/drm/i915/i915_gem.c:2482!
[  212.499795] invalid opcode: 0000 [#1] PREEMPT SMP
[  212.504486] Modules linked in: vgem i915 intel_powerclamp lpc_ich tg3 ptp pps_core prime_numbers
[  212.513257] CPU: 0 PID: 3160 Comm: kms_cursor_lega Tainted: G     U          4.13.0-CI-CI_DRM_3045+ #1
[  212.522530] Hardware name: Dell Inc.                 OptiPlex GX280               /0G8310, BIOS A04 02/09/2005
[  212.532496] task: ffff880033580040 task.stack: ffffc900004bc000
[  212.538467] RIP: 0010:____i915_gem_object_get_pages+0x42/0x70 [i915]
[  212.544797] RSP: 0018:ffffc900004bf938 EFLAGS: 00010202
[  212.550004] RAX: 0000000000000001 RBX: ffff8800316fb480 RCX: 0000000000000001
[  212.557112] RDX: 0000000080000001 RSI: 0000000000000000 RDI: ffff8800316fb480
[  212.564220] RBP: ffffc900004bf968 R08: ffff880033580980 R09: 0000000000000000
[  212.571328] R10: ffffc900004bf930 R11: 000000009d0ad9b2 R12: ffffffffa0174340
[  212.578436] R13: ffff8800316fb670 R14: ffff88002b5f78c8 R15: ffff8800316fb480
[  212.585545] FS:  00007efe13003a40(0000) GS:ffff88003f400000(0000) knlGS:0000000000000000
[  212.593605] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  212.599329] CR2: 00007f86202fa000 CR3: 0000000038e13000 CR4: 00000000000006f0
[  212.606437] Call Trace:
[  212.608916]  ? i915_gem_object_attach_phys+0xcf/0x130 [i915]
[  212.614603]  intel_prepare_plane_fb+0x2c6/0x4e0 [i915]
[  212.619727]  drm_atomic_helper_prepare_planes+0x52/0xe0
[  212.624982]  intel_atomic_commit+0x78/0x280 [i915]
[  212.629757]  drm_atomic_commit+0x4b/0x50
[  212.633664]  drm_atomic_helper_update_plane+0xe3/0x100
[  212.638831]  intel_legacy_cursor_update+0x5b/0x5b0 [i915]
[  212.644258]  ? intel_user_framebuffer_create+0x142/0x220 [i915]
[  212.650158]  __setplane_internal+0x18d/0x250
[  212.654415]  ? drm_internal_framebuffer_create+0x358/0x500
[  212.659881]  drm_mode_cursor_universal+0xe4/0x1a0
[  212.664571]  drm_mode_cursor_common+0x16d/0x1f0
[  212.669087]  ? drm_mode_setplane+0x140/0x140
[  212.673339]  drm_mode_cursor_ioctl+0x41/0x50
[  212.677593]  drm_ioctl_kernel+0x69/0xb0
[  212.681415]  drm_ioctl+0x2f9/0x3d0
[  212.684803]  ? drm_mode_setplane+0x140/0x140
[  212.689060]  ? __this_cpu_preempt_check+0x13/0x20
[  212.693748]  do_vfs_ioctl+0x94/0x670
[  212.697312]  ? entry_SYSCALL_64_fastpath+0x5/0xb1
[  212.701998]  ? __this_cpu_preempt_check+0x13/0x20
[  212.706685]  ? trace_hardirqs_on_caller+0xe3/0x1b0
[  212.711459]  SyS_ioctl+0x41/0x70
[  212.714674]  entry_SYSCALL_64_fastpath+0x1c/0xb1
[  212.719271] RIP: 0033:0x7efe11202587
[  212.722832] RSP: 002b:00007ffe14afd338 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[  212.730376] RAX: ffffffffffffffda RBX: ffffffff8148a693 RCX: 00007efe11202587
[  212.737484] RDX: 00007ffe14afd370 RSI: 00000000c01c64a3 RDI: 0000000000000003
[  212.744592] RBP: ffffc900004bff88 R08: 0000000000000040 R09: 0000000000000000
[  212.751699] R10: 0000000000000064 R11: 0000000000000246 R12: 000055760cc67f70
[  212.758807] R13: 0000000000000003 R14: 00000000c01c64a3 R15: 000055760cc68168
[  212.765917]  ? __this_cpu_preempt_check+0x13/0x20
[  212.770606] Code: 03 00 00 03 48 89 fb 75 24 48 8b 87 20 01 00 00 ff 50 08 48 3d 00 f0 ff ff 77 0d 48 89 c6 48 89 df e8 13 ff ff ff 31 c0 5b 5d c3 <0f> 0b 48 c7 c2 c0 ac 19 a0 be 01 00 00 00 48 c7 c7 1a 8d 18 a0 
[  212.789525] RIP: ____i915_gem_object_get_pages+0x42/0x70 [i915] RSP: ffffc900004bf938
[  212.804088] ---[ end trace d5e79f1e3f04a6d9 ]---

Full logs: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_3045/fi-gdg-551/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
Comment 1 Chris Wilson 2017-09-06 14:45:03 UTC
https://patchwork.freedesktop.org/series/29885/
Comment 2 Chris Wilson 2017-09-06 21:16:34 UTC
commit 88c880bbdebe43ae13599d678b35c565e7563193
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Sep 6 14:52:20 2017 +0100

    drm/i915: Lift has-pinned-pages assert to caller of ____i915_gem_object_get_pages
    
    i915_gem_object_attach_phys() is trying to swap out its shmemfs pages
    for a new set of physically contiguous pages, but unfortunately triggers
    an assert inside get-pages.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102561
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Link: https://patchwork.freedesktop.org/patch/msgid/20170906135220.13508-1-chris@chris-wilson.co.uk
    Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Comment 3 Martin Peres 2017-09-07 07:43:35 UTC
Seems to work, thanks Chris!


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.