[Intel-gfx] [Bug 104805] regression in 4.15 unable to reboot/poweroff, vgaswitcheroo doesn't work, RIP: 0010:i915_pci_probe+0x11/0x70 [i915]
Lukas Wunner
lukas at wunner.de
Sun Jan 28 21:37:11 UTC 2018
On Sat, Jan 27, 2018 at 10:42:45AM +0000, bugzilla-daemon at freedesktop.org wrote:
> https://bugs.freedesktop.org/show_bug.cgi?id=104805
>
> --- Comment #6 from Chris Wilson <chris at chris-wilson.co.uk> ---
> Sigh. Revert then solve the bloat another way. I think we can move it to a
> seperate module and only load it during pci_probe. (That module can then play
> some tricks to construct driver_info using private commands to allow feature
> enabling.)
The following might work: Set i915_pci_driver->id_table = NULL.
Then in i915_init(), after calling pci_register_driver(), iterate
over pciidlist[] and call pci_add_dynid() for each entry. Finally,
call pci_free_dynids().
The problem is that after manually unbinding the driver via sysfs,
you can't bind it again.
Also, as soon as Intel introduces a discrete GPU (e.g. in a dock,
hotplugged via Thunderbolt), the whole idea falls apart.
How many bytes are we talking about here anyway? I imagine it's less
than a page. Honestly I think it's not worth the effort.
I'm wondering why noone else is seeing this crash, myself included.
Is the driver somehow unbound and rebound on Chris Murphy's machine?
@Chris Murphy: You may have noticed an 8 second delay on reboot with
4.15. Before you waste time bisecting it: A fix is already queued
for 4.16 and marked for stable:
https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?id=493fb50e958c
Have a pleasant fin de weekend.
Lukas
More information about the Intel-gfx
mailing list