Bug 92906 - [HSW/BDW] i915 driver in kernels prior to 4.2 fail in KVM virtual machines with Intel IGD passthrough
Summary: [HSW/BDW] i915 driver in kernels prior to 4.2 fail in KVM virtual machines wi...
Status: CLOSED INVALID
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg git
Hardware: x86-64 (AMD64) Linux (All)
: high minor
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-11-11 18:31 UTC by David Cowperthwaite
Modified: 2017-07-24 22:44 UTC (History)
1 user (show)

See Also:
i915 platform: BDW, HSW, SKL
i915 features:


Attachments

Description David Cowperthwaite 2015-11-11 18:31:56 UTC
On 4.2 kernel there's a failure in intel_uncore.c but the kernel load progresses and the VM boots, DRI / Mesa / MSDK all work.

On kernels prior to this, (4.1 and earlier were tested) the VM stops @ the point where drm reports that it is "Replacing the VGA console driver" and no crash is output.

This output is from a HSW Corei7 with Iris Pro graphics (Gigabyte Brix Pro).
The Host OS is Centos7.1 with KVM installed and the patch to reject passthrough of devices with RMRR tables (https://lkml.org/lkml/2014/7/3/580) reversed.

The Virtual Machine is also Centos7.1, the goal is to have Intel Media SDK (requires 3.10 kernel + MSDK specific patchset) working in a VM on KVM on HSW & BDW (later SKL).  Host PCI device 0:2.0 (IGD) is mapped through to the VM.

Call Trace form the 4.2 kernel (which did eventually work)
[    8.361933] [drm] Found 128MB of eLLC
[    8.364588] [drm] Memory usable by graphics device = 2048M
[    8.364675] [drm] Replacing VGA console driver
[    8.369307] systemd[1]: Received SIGCHLD from PID 490 (lvm).
[    8.369703] ------------[ cut here ]------------
[    8.369730] WARNING: CPU: 1 PID: 526 at drivers/gpu/drm/i915/intel_uncore.c:620 hsw_unclaimed_reg_debug.isra.14+0x78/0xa0 [i915]()
[    8.369731] Unclaimed register detected after writing to register 0x6120c
[    8.369752] Modules linked in: snd_hda_intel(+) snd_hda_codec snd_hda_core snd_hwdep snd_seq snd_seq_device snd_pcm ppdev joydev snd_timer i915(+) snd input_leds video serio_raw soundcore i2c_algo_bit pcspkr virtio_balloon i2c_piix4 parport_pc 8250_fintek parport acpi_cpufreq uinput xfs libcrc32c virtio_blk sr_mod cdrom virtio_console virtio_net ata_generic pata_acpi qxl syscopyarea ata_piix sysfillrect sysimgblt drm_kms_helper ttm virtio_pci virtio_ring virtio drm libata floppy dm_mirror dm_region_hash dm_log dm_mod
[    8.369754] CPU: 1 PID: 526 Comm: systemd-udevd Not tainted 4.2.0-1.el7.elrepo.x86_64 #1
[    8.369755] Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011
[    8.369757]  0000000000000000 000000008918e0ce ffff880079543708 ffffffff816aebe9
[    8.369758]  0000000000000000 ffff880079543760 ffff880079543748 ffffffff810798ea
[    8.369760]  00003ffffffff000 ffff88007ac40078 000000000006120c ffff88007ac40078
[    8.369760] Call Trace:
[    8.369765]  [<ffffffff816aebe9>] dump_stack+0x45/0x57
[    8.369767]  [<ffffffff810798ea>] warn_slowpath_common+0x8a/0xc0
[    8.369768]  [<ffffffff81079975>] warn_slowpath_fmt+0x55/0x70
[    8.369772]  [<ffffffff810c1581>] ? __raw_callee_save___pv_queued_spin_unlock+0x11/0x20
[    8.369775]  [<ffffffff810662b4>] ? iounmap+0x84/0xb0
[    8.369791]  [<ffffffffa034ecc8>] hsw_unclaimed_reg_debug.isra.14+0x78/0xa0 [i915]
[    8.369804]  [<ffffffffa03504e3>] hsw_write32+0x93/0x130 [i915]
[    8.369819]  [<ffffffffa0359b41>] intel_setup_bios+0x81/0x90 [i915]
[    8.369840]  [<ffffffffa03abd80>] i915_driver_load+0x520/0xed0 [i915]
[    8.369843]  [<ffffffff81568770>] ? trace_open+0x30/0x30
[    8.369846]  [<ffffffff81318880>] ? cleanup_uevent_env+0x10/0x10
[    8.369847]  [<ffffffff81318c0f>] ? kobject_uevent_env+0x15f/0x660
[    8.369851]  [<ffffffff8145385f>] ? devtmpfs_create_node+0x10f/0x140
[    8.369853]  [<ffffffff810c1581>] ? __raw_callee_save___pv_queued_spin_unlock+0x11/0x20
[    8.369856]  [<ffffffff8169f29c>] ? klist_add_tail+0x3c/0x50
[    8.369859]  [<ffffffff81449af0>] ? device_add+0x270/0x600
[    8.369861]  [<ffffffff810c1581>] ? __raw_callee_save___pv_queued_spin_unlock+0x11/0x20
[    8.369871]  [<ffffffffa00b61bf>] drm_dev_register+0xaf/0x100 [drm]
[    8.369878]  [<ffffffffa00b8ebf>] drm_get_pci_dev+0x8f/0x1e0 [drm]
[    8.369891]  [<ffffffffa02ff1fb>] i915_pci_probe+0x3b/0x60 [i915]
[    8.369893]  [<ffffffff813537b5>] local_pci_probe+0x45/0xa0
[    8.369895]  [<ffffffff81354964>] ? pci_match_device+0xf4/0x120
[    8.369896]  [<ffffffff81354ab9>] pci_device_probe+0xe9/0x130
[    8.369899]  [<ffffffff8144ce4f>] driver_probe_device+0x14f/0x420
[    8.369900]  [<ffffffff8144d1b0>] __driver_attach+0x90/0xa0
[    8.369901]  [<ffffffff8144d120>] ? driver_probe_device+0x420/0x420
[    8.369903]  [<ffffffff8144abec>] bus_for_each_dev+0x6c/0xc0
[    8.369905]  [<ffffffff81316e87>] ? ida_get_new_above+0x217/0x270
[    8.369906]  [<ffffffff8144c89e>] driver_attach+0x1e/0x20
[    8.369907]  [<ffffffff8144c3c0>] bus_add_driver+0x1d0/0x290
[    8.369909]  [<ffffffff8144dba0>] driver_register+0x60/0xe0
[    8.369910]  [<ffffffff8135313c>] __pci_register_driver+0x4c/0x50
[    8.369917]  [<ffffffffa00b90f0>] drm_pci_init+0xe0/0x110 [drm]
[    8.369918]  [<ffffffffa0411000>] ? 0xffffffffa0411000
[    8.369931]  [<ffffffffa04110a0>] i915_init+0xa0/0xa8 [i915]
[    8.369933]  [<ffffffff8100213d>] do_one_initcall+0xcd/0x1f0
[    8.369935]  [<ffffffff811b3c6e>] ? __vunmap+0xae/0xf0
[    8.369937]  [<ffffffff811cf49f>] ? kmem_cache_alloc_trace+0x17f/0x1f0
[    8.369940]  [<ffffffff816a9e8e>] ? do_init_module+0x28/0x1ea
[    8.369941]  [<ffffffff816a9ec7>] do_init_module+0x61/0x1ea
[    8.369945]  [<ffffffff810fd1bc>] load_module+0x1cfc/0x2600
[    8.369946]  [<ffffffff810f9870>] ? __symbol_put+0x60/0x60
[    8.369948]  [<ffffffff810f9bf6>] ? copy_module_from_fd.isra.54+0x116/0x170
[    8.369950]  [<ffffffff810fdcdf>] SyS_finit_module+0x9f/0xd0
[    8.369953]  [<ffffffff816b5b6e>] entry_SYSCALL_64_fastpath+0x12/0x71
[    8.369954] ---[ end trace 5e5cacb01a9cf63a ]---
Comment 1 Jani Nikula 2015-11-12 08:59:37 UTC
Let me get this straight. Your use case works in v4.2 and later, but fails in v4.1 and earlier. Are you filing this bug with hopes of figuring out what the fix was in v4.2, and having that backported to older kernels?
Comment 2 Jani Nikula 2015-12-16 08:17:02 UTC
No reply, closing.


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.