Bug 102045 - Kernel oops in mock_sefltests
Summary: Kernel oops in mock_sefltests
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: DRI git
Hardware: x86-64 (AMD64) All
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-08-05 11:58 UTC by Matwey V. Kornilov
Modified: 2018-04-20 11:11 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features: power/runtime PM


Attachments
dmesg with drm. debug=0xe (59.79 KB, text/plain)
2017-08-09 15:24 UTC, Matwey V. Kornilov
no flags Details

Description Matwey V. Kornilov 2017-08-05 11:58:45 UTC
Hello,

I am running 4.12.4 and see the following when load i915 with mock_selftests=1:

[   20.305580] pm_runtime_get_sync() failed: -13
[   20.305617] ------------[ cut here ]------------
[   20.305713] WARNING: CPU: 1 PID: 35 at ../drivers/gpu/drm/i915/intel_runtime_pm.c:2846 intel_runtime_pm_get+0x64/0xb0 [i915]
[   20.305714] Modules linked in: msr rtsx_usb_ms memstick nls_iso8859_1 arc4 nls_cp437 vfat fat snd_hda_intel uvcvideo snd_hda_codec snd_hda_core videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core snd_hwdep snd_pcm videodev i915(+) snd_timer prime_numbers drm_kms_helper snd btusb ath10k_pci ath10k_core drm ath mac80211 cfg80211 iTCO_wdt r8169 mii mei_me iTCO_vendor_support btrtl fb_sys_fops syscopyarea sysfillrect intel_rapl soundcore sysimgblt i2c_algo_bit x86_pkg_temp_thermal intel_pch_thermal mei shpchp i2c_i801 intel_powerclamp coretemp hci_uart btbcm serdev btqca kvm btintel irqbypass crct10dif_pclmul ucsi crc32_pclmul crc32c_intel ghash_clmulni_intel intel_lpss_acpi bluetooth intel_lpss pcbc ecdh_generic joydev tpm_tis tpm_tis_core ideapad_laptop pinctrl_sunrisepoint sparse_keymap
[   20.305789]  aesni_intel aes_x86_64 rfkill pcspkr acpi_pad ac crypto_simd tpm pinctrl_intel wmi glue_helper cryptd battery rtsx_usb_sdmmc mmc_core rtsx_usb hid_generic usbhid serio_raw xhci_pci sr_mod cdrom xhci_hcd usbcore video i2c_hid button dm_mirror dm_region_hash dm_log dm_mod sg efivarfs
[   20.305826] CPU: 1 PID: 35 Comm: kworker/1:1 Tainted: G     U          4.12.4-1.g1268764-vanilla #1
[   20.305828] Hardware name: LENOVO 80WQ/ , BIOS 2WCN29WW 07/12/2017
[   20.305918] Workqueue: events __i915_gem_free_work [i915]
[   20.305922] task: ffff8ff619888080 task.stack: ffffa9d8807b0000
[   20.305995] RIP: 0010:intel_runtime_pm_get+0x64/0xb0 [i915]
[   20.305997] RSP: 0018:ffffa9d8807b3dd0 EFLAGS: 00010286
[   20.306000] RAX: 0000000000000021 RBX: ffff8ff5b8fc0988 RCX: 0000000000000000
[   20.306001] RDX: ffff8ff63f4962a8 RSI: ffff8ff63f48e328 RDI: ffff8ff63f48e328
[   20.306003] RBP: ffffa9d8807b3dd8 R08: 000000000000032c R09: 0000000000000001
[   20.306005] R10: 0000000000000c20 R11: 0000000000000001 R12: ffff8ff5b00d4470
[   20.306006] R13: 0000000000000000 R14: ffff8ff5b8fc0988 R15: ffff8ff61987d480
[   20.306009] FS:  0000000000000000(0000) GS:ffff8ff63f480000(0000) knlGS:0000000000000000
[   20.306011] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   20.306013] CR2: 00007fed55caa978 CR3: 0000000033c09000 CR4: 00000000003406e0
[   20.306015] Call Trace:
[   20.306091]  __i915_gem_free_objects+0x34/0x310 [i915]
[   20.306152]  __i915_gem_free_work+0x33/0x50 [i915]
[   20.306159]  process_one_work+0x18f/0x3d0
[   20.306162]  worker_thread+0x4a/0x3a0
[   20.306167]  kthread+0x125/0x140
[   20.306170]  ? process_one_work+0x3d0/0x3d0
[   20.306175]  ? kthread_create_on_node+0x40/0x40
[   20.306181]  ret_from_fork+0x25/0x30
[   20.306184] Code: 8b 83 30 52 00 00 85 c0 74 45 5b 5d c3 80 3d 49 a2 12 00 00 75 da 89 c6 48 c7 c7 b8 8a 9f c0 c6 05 37 a2 12 00 01 e8 50 e9 8a f2 <0f> ff eb c1 80 3d 41 a2 12 00 00 75 c8 48 c7 c7 18 88 9f c0 c6 
[   20.306243] ---[ end trace ee8eab85e2b483e0 ]---
[   20.995521] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   21.201987] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
[   21.235530] ip_tables: (C) 2000-2006 Netfilter Core Team
[   21.327875] igt_vma_create timed out: after 2 objects in 4421 contexts
[   21.777096] BUG: unable to handle kernel paging request at 00000000010001c0
[   21.777187] IP: i915_gem_switch_to_kernel_context+0x87/0x190 [i915]
[   21.777215] PGD 117f05067 
[   21.777215] P4D 117f05067 
[   21.777227] PUD 0 

[   21.777256] Oops: 0000 [#1] PREEMPT SMP
[   21.777273] Modules linked in: ip6table_mangle nf_conntrack_netbios_ns nf_conntrack_broadcast nf_conntrack_ipv4 nf_defrag_ipv4 ip_tables xt_conntrack nf_conntrack libcrc32c ip6table_filter ip6_tables x_tables msr rtsx_usb_ms memstick nls_iso8859_1 arc4 nls_cp437 vfat fat snd_hda_intel uvcvideo snd_hda_codec snd_hda_core videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core snd_hwdep snd_pcm videodev i915(+) snd_timer prime_numbers drm_kms_helper snd btusb ath10k_pci ath10k_core drm ath mac80211 cfg80211 iTCO_wdt r8169 mii mei_me iTCO_vendor_support btrtl fb_sys_fops syscopyarea sysfillrect intel_rapl soundcore sysimgblt i2c_algo_bit x86_pkg_temp_thermal intel_pch_thermal mei shpchp i2c_i801 intel_powerclamp coretemp hci_uart btbcm serdev btqca kvm btintel irqbypass crct10dif_pclmul ucsi
[   21.777599]  crc32_pclmul crc32c_intel ghash_clmulni_intel intel_lpss_acpi bluetooth intel_lpss pcbc ecdh_generic joydev tpm_tis tpm_tis_core ideapad_laptop pinctrl_sunrisepoint sparse_keymap aesni_intel aes_x86_64 rfkill pcspkr acpi_pad ac crypto_simd tpm pinctrl_intel wmi glue_helper cryptd battery rtsx_usb_sdmmc mmc_core rtsx_usb hid_generic usbhid serio_raw xhci_pci sr_mod cdrom xhci_hcd usbcore video i2c_hid button dm_mirror dm_region_hash dm_log dm_mod sg efivarfs
[   21.777791] CPU: 3 PID: 616 Comm: systemd-udevd Tainted: G     U  W       4.12.4-1.g1268764-vanilla #1
[   21.777829] Hardware name: LENOVO 80WQ/ , BIOS 2WCN29WW 07/12/2017
[   21.777855] task: ffff8ff61569a080 task.stack: ffffa9d880c30000
[   21.777918] RIP: 0010:i915_gem_switch_to_kernel_context+0x87/0x190 [i915]
[   21.777952] RSP: 0018:ffffa9d880c33a90 EFLAGS: 00010206
[   21.777974] RAX: ffff8ff5b7bd4220 RBX: ffff8ff5b7bd0988 RCX: 000000000000000f
[   21.778003] RDX: 0000000001000000 RSI: 000000000000000f RDI: ffff8ff5b7bd5d38
[   21.778033] RBP: ffffa9d880c33ad0 R08: 0000000000000000 R09: ffff8ff5b7bd5d28
[   21.778062] R10: 0000000000000040 R11: ffff8ff5b7bd0988 R12: ffff8ff5b7bd5d28
[   21.778091] R13: 0000000000000000 R14: ffff8ff5b7bd3280 R15: ffff8ff616850000
[   21.778121] FS:  00007f6cd23ab8c0(0000) GS:ffff8ff63f580000(0000) knlGS:0000000000000000
[   21.779053] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   21.779993] CR2: 00000000010001c0 CR3: 0000000116811000 CR4: 00000000003406e0
[   21.780958] Call Trace:
[   21.781899]  i915_gem_evict_something+0x4b1/0x4e0 [i915]
[   21.782739]  igt_evict_something+0x56/0xd0 [i915]
[   21.783605]  __i915_subtests+0x54/0xd0 [i915]
[   21.784472]  ? mock_gem_device+0x3b3/0x4c0 [i915]
[   21.785346]  i915_gem_evict_mock_selftests+0x42/0x70 [i915]
[   21.786252]  __run_selftests+0x124/0x190 [i915]
[   21.787029]  ? 0xffffffffc0a5f000
[   21.787801]  i915_mock_selftests+0x30/0x60 [i915]
[   21.788582]  i915_init+0xc/0x78 [i915]
[   21.789339]  ? 0xffffffffc0a5f000
[   21.790117]  do_one_initcall+0x50/0x190
[   21.790889]  ? __vunmap+0x81/0xb0
[   21.791661]  do_init_module+0x5f/0x1ee
[   21.792348]  load_module+0x1672/0x1da0
[   21.793034]  SYSC_finit_module+0xd7/0xf0
[   21.793736]  ? SYSC_finit_module+0xd7/0xf0
[   21.794431]  SyS_finit_module+0xe/0x10
[   21.795141]  entry_SYSCALL_64_fastpath+0x1e/0xa9
[   21.795850] RIP: 0033:0x7f6cd124a659
[   21.796581] RSP: 002b:00007ffd51021f68 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[   21.797271] RAX: ffffffffffffffda RBX: 00000019af3334d0 RCX: 00007f6cd124a659
[   21.797991] RDX: 0000000000000000 RSI: 00000019af334a00 RDI: 0000000000000016
[   21.798700] RBP: 0000000000000016 R08: 0000000000000000 R09: 00000019af32981d
[   21.799427] R10: 0000000000000016 R11: 0000000000000246 R12: 00007ffd51020f90
[   21.800157] R13: 00007ffd51020f70 R14: 0000000000000005 R15: 0000000000000000
[   21.800888] Code: 00 48 81 c7 b0 53 00 00 48 39 f8 0f 84 f7 00 00 00 41 8b 57 10 48 8d 34 52 48 8d 14 b2 48 8b 54 d0 48 48 85 d2 0f 84 dd 00 00 00 <8b> b2 c0 01 00 00 85 f6 74 25 4c 8b 52 78 4d 8b 92 40 01 00 00 
[   21.801729] RIP: i915_gem_switch_to_kernel_context+0x87/0x190 [i915] RSP: ffffa9d880c33a90
[   21.802541] CR2: 00000000010001c0
[   21.803355] ---[ end trace ee8eab85e2b483e1 ]---
Comment 1 Chris Wilson 2017-08-05 12:19:22 UTC
Please check against https://cgit.freedesktop.org/drm-tip
Comment 2 Matwey V. Kornilov 2017-08-05 14:05:14 UTC
Unfortunately, the same happens with drm-tip. (4.13-rc3).
Comment 3 Elizabeth 2017-08-08 21:13:01 UTC
(In reply to Matwey V. Kornilov from comment #2)
> Unfortunately, the same happens with drm-tip. (4.13-rc3).
Hello Matwey,
Could you please replicate with drm.debug=0xe parameter on grub and attach dmesg?
Thank you.
Comment 4 Matwey V. Kornilov 2017-08-09 15:24:17 UTC
Created attachment 133407 [details]
dmesg with drm. debug=0xe
Comment 5 Matwey V. Kornilov 2017-08-09 15:25:44 UTC
(In reply to Elizabeth from comment #3)
> (In reply to Matwey V. Kornilov from comment #2)
> > Unfortunately, the same happens with drm-tip. (4.13-rc3).
> Hello Matwey,
> Could you please replicate with drm.debug=0xe parameter on grub and attach
> dmesg?
> Thank you.

Hello, just attached is dmesg with required drm.debug parameter.
Comment 6 Chris Wilson 2017-08-10 16:17:03 UTC
commit 3ec0af7f223bab9503c4ed57d00ed34b137df476
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Aug 9 17:39:30 2017 +0100

    drm/i915: Supply the engine-id for our mock_engine()
    
    In the original selftest, we didn't care what the engine->id was, just
    that it could uniquely identify it. Later though, we started tracking
    the mock engines in the fixed size arrays around the drm_i915_private and
    so we now require their indices to be correct. This becomes an issue when
    using the standalone harness which runs all available tests at module load,
    and so we quickly assign an out-of-bounds index to an engine as we
    reallocate the mock GEM device between tests. It doesn't show up in
    igt/drv_selftest as that runs each subtest individually.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102045
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Link: https://patchwork.freedesktop.org/patch/msgid/20170809163930.26470-1-chris@chris-wilson.co.uk
    Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Comment 7 Elizabeth 2018-01-05 16:29:32 UTC
Hello Matwey, Could you verify it was fixed by comment 6? Thank you.
Comment 8 Jani Saarinen 2018-04-20 11:11:36 UTC
Closing, please re-open if still occurs.


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.