Re: Kernel Freeze with American Megatrends BIOS

From: Roland Singer
Date: Wed Aug 31 2016 - 07:13:53 EST

Am 30.08.2016 um 21:21 schrieb Peter Wu:
> On Tue, Aug 30, 2016 at 02:13:46PM -0400, Ilia Mirkin wrote:
>> On Tue, Aug 30, 2016 at 2:02 PM, Roland Singer
>> <roland.singer@xxxxxxxxxxxxx> wrote:
>>> I configured bbswitch to not set any states automatically...
>>> So it's possible to obtain and verify the GPU power state.
>>> However I removed the bbswitch module and booted with nouveau.
>>> Kernel 4.7.2: nouveau switches the discrete GPU off.
>>> I can't trigger the freeze, because bbswitch is missing.
>>> I'll work with the system and see if it will freeze.
>>> Kernel 4.8-rc4: nouveau does not care about the power state and
>>> the discrete GPU is never switched off. I will notice
>>> this, because the second cooling FAN will stop...
>>> Same log messages as send before.
>> That's surprising. I believe there's an issue with the new logic when
>> there's an HDMI audio subdevice. However that only appears if there's
>> a cable plugged in, at least in the systems Peter tested. You should
>> be able to see whether it's there or not with 'lspci'.
> I doubt that the audio device is responsible here, that should only show
> up after following very specific steps (runtime suspend/resume (PCI or
> ACPI magic), remove PCI device, rescan bus).
>> You can check for sure by looking in the vgaswitcheroo state. It
>> should say DynOff when it's powered off.
>> Either way, I think using bbswitch + nouveau isn't supported by
>> anyone, so if you want to use it that way, you're on your own. (You
>> may want to load nouveau with runpm=0 so that nouveau doesn't try to
>> manage the GPU suspend stuff.)
> I understood that Roland's intent is to check the power state, not use
> the suspend functionality of bbswitch, if you load bbswitch without
> module options amd do not write to /proc/bbswitch, then it allows you to
> read out the actual status (you could also just use lspci -H1 for that
> though).

lspci -H1 works perfect. Thanks.
Just tried to verify the output with lspci -H1. I unloaded the nouveau
module and modprobe freezed with:

$ modprobe -r nouveau
nouveau 0000:01:00.0: pci: failed to adjust lnkctl speed
nouveau 0000:01:00.0: fb: init failed. -22
nouveau 0000:01:00.0: init failed with -22
nouveau: DRM:00000000:00000000: init failed with -22
nouveau: DRM:00000000:00000000: init failed with -22