2022-02-02 10:43:27

by Kenneth Crudup

[permalink] [raw]
Subject: Re: [PATCH V1] PCI/ASPM: Save/restore L1SS Capability for suspend/resume


On Tue, 1 Feb 2022, Vidya Sagar wrote:

> Kenneth R. Crudup <[email protected]>
> Could you please try this patch on top of linux-next and collect more info?
> - 'sudo lspci -vvvv' output before and after hibernation

See attached. Added a diff file, too.

> - could you please confirm the working of this patch for non NVMe devices that
> support L1 Sub-States?

It seems to work, I'm on it now. I saw a "GPU Hang" from the i915 driver, but
it doesn't seem to be affecting the GPU any.

> - Could you please try "NVME_QUIRK_NO_DEEPEST_PS" and "NVME_QUIRK_SIMPLE_SUSPEND"
> quirks (one at a time) in check_vendor_combination_bug() API and see if it
> makes any difference?

Do you still need me to do that, since this appears to work?

I will try another hibernate attempt just to be sure, too.

-Kenny

--
Kenneth R. Crudup / Sr. SW Engineer, Scott County Consulting, Orange County CA


Attachments:
diff-of-lspci-before-after (1.95 kB)
lspci-l1ss-patch-before-hibernate (41.58 kB)
lspci-l1ss-patch-after-hibernate (41.58 kB)
Download all attachments

2022-02-02 11:12:45

by Kenneth Crudup

[permalink] [raw]
Subject: Re: [PATCH V1] PCI/ASPM: Save/restore L1SS Capability for suspend/resume


The attachments made the messages too big; resending one at a time.
(This one is the "lspci" after the 2nd hibernation attempt (which worked)).

On Tue, 1 Feb 2022, Kenneth R. Crudup wrote:

>
> On Tue, 1 Feb 2022, Vidya Sagar wrote:
>
> > Kenneth R. Crudup <[email protected]>
> > Could you please try this patch on top of linux-next and collect more info?
> > - 'sudo lspci -vvvv' output before and after hibernation
>
> See attached. Added a diff file, too.
>
> > - could you please confirm the working of this patch for non NVMe devices that
> > support L1 Sub-States?
>
> It seems to work, I'm on it now. I saw a "GPU Hang" from the i915 driver, but
> it doesn't seem to be affecting the GPU any.
>
> > - Could you please try "NVME_QUIRK_NO_DEEPEST_PS" and "NVME_QUIRK_SIMPLE_SUSPEND"
> > quirks (one at a time) in check_vendor_combination_bug() API and see if it
> > makes any difference?
>
> Do you still need me to do that, since this appears to work?
>
> I will try another hibernate attempt just to be sure, too.
>
> -Kenny
>
>

--
Kenneth R. Crudup / Sr. SW Engineer, Scott County Consulting, Orange County CA


Attachments:
lspci-l1ss-patch-after-hibernate-2 (41.58 kB)
diff-of-lspci-before-after-2 (1.95 kB)
diff-of-lspci-before-after (1.95 kB)
Download all attachments

2022-02-02 16:32:11

by Vidya Sagar

[permalink] [raw]
Subject: Re: [PATCH V1] PCI/ASPM: Save/restore L1SS Capability for suspend/resume

Hi Kenneth,
Thanks for sharing the files.
BTW, I see that the ASPM L1SS capability is supported by only two
endpoints viz. KIOXIA's NVMe drive and Realtek's Card reader. None of
the root ports seem to have the support. So, I'm wondering how was it
even getting enabled in the first place earlier?
(OR)
was it the case that L1SS sub-states were never enabled earlier also and
the issue was occurring without having ASPM L1SS enabled? (but with only
L0s and L1 enabled??)

Also, I see that from 'before' and 'after' logs that for both NVMe and
Card reader and their corresponding root ports, none of the ASPM states
are enabled (not even L0s or L1).
Did you set the policy to 'powersupersave' before hibernating the system?

On 2/2/2022 12:23 AM, Kenneth R. Crudup wrote:
> External email: Use caution opening links or attachments
>
>
> On Tue, 1 Feb 2022, Vidya Sagar wrote:
>
>> Kenneth R. Crudup <[email protected]>
>> Could you please try this patch on top of linux-next and collect more info?
>> - 'sudo lspci -vvvv' output before and after hibernation
>
> See attached. Added a diff file, too.
>
>> - could you please confirm the working of this patch for non NVMe devices that
>> support L1 Sub-States?
>
> It seems to work, I'm on it now. I saw a "GPU Hang" from the i915 driver, but
> it doesn't seem to be affecting the GPU any.
>
>> - Could you please try "NVME_QUIRK_NO_DEEPEST_PS" and "NVME_QUIRK_SIMPLE_SUSPEND"
>> quirks (one at a time) in check_vendor_combination_bug() API and see if it
>> makes any difference?
>
> Do you still need me to do that, since this appears to work?
>
> I will try another hibernate attempt just to be sure, too.
>
> -Kenny
>
> --
> Kenneth R. Crudup / Sr. SW Engineer, Scott County Consulting, Orange County CA
>

2022-02-03 12:09:08

by Kenneth Crudup

[permalink] [raw]
Subject: Re: [PATCH V1] PCI/ASPM: Save/restore L1SS Capability for suspend/resume


The attachments made the messages too big; resending one at a time.

On Tue, 1 Feb 2022, Kenneth R. Crudup wrote:

>
> On Tue, 1 Feb 2022, Vidya Sagar wrote:
>
> > Kenneth R. Crudup <[email protected]>
> > Could you please try this patch on top of linux-next and collect more info?
> > - 'sudo lspci -vvvv' output before and after hibernation
>
> See attached. Added a diff file, too.
>
> > - could you please confirm the working of this patch for non NVMe devices that
> > support L1 Sub-States?
>
> It seems to work, I'm on it now. I saw a "GPU Hang" from the i915 driver, but
> it doesn't seem to be affecting the GPU any.
>
> > - Could you please try "NVME_QUIRK_NO_DEEPEST_PS" and "NVME_QUIRK_SIMPLE_SUSPEND"
> > quirks (one at a time) in check_vendor_combination_bug() API and see if it
> > makes any difference?
>
> Do you still need me to do that, since this appears to work?
>
> I will try another hibernate attempt just to be sure, too.
>
> -Kenny
>
>

--
Kenneth R. Crudup / Sr. SW Engineer, Scott County Consulting, Orange County CA


Attachments:
lspci-l1ss-patch-after-hibernate (41.58 kB)