* [PATCH 6.1.y] platform/x86: Add s2idle quirk for more Lenovo laptops
@ 2023-10-30 21:11 David Lazar
2023-10-30 21:29 ` Mario Limonciello
0 siblings, 1 reply; 3+ messages in thread
From: David Lazar @ 2023-10-30 21:11 UTC (permalink / raw)
To: stable; +Cc: Hans de Goede, Mario Limonciello, Mark Pearson, Greg KH
commit 3bde7ec13c971445faade32172cb0b4370b841d9 upstream.
When suspending to idle and resuming on some Lenovo laptops using the
Mendocino APU, multiple NVME IOMMU page faults occur, showing up in
dmesg as repeated errors:
nvme 0000:01:00.0: AMD-Vi: Event logged [IO_PAGE_FAULT domain=0x000b
address=0xb6674000 flags=0x0000]
The system is unstable afterwards.
Applying the s2idle quirk introduced by commit 455cd867b85b ("platform/x86:
thinkpad_acpi: Add a s2idle resume quirk for a number of laptops")
allows these systems to work with the IOMMU enabled and s2idle
resume to work.
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218024
Suggested-by: Mario Limonciello <mario.limonciello@amd.com>
Suggested-by: Mark Pearson <mpearson-lenovo@squebb.ca>
Signed-off-by: David Lazar <dlazar@gmail.com>
Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca>
Link: https://lore.kernel.org/r/ZTlsyOaFucF2pWrL@localhost
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
drivers/platform/x86/thinkpad_acpi.c | 73 ++++++++++++++++++++++++++++
1 file changed, 73 insertions(+)
diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c
index e7ece2738de9..3bb60687f2e4 100644
--- a/drivers/platform/x86/thinkpad_acpi.c
+++ b/drivers/platform/x86/thinkpad_acpi.c
@@ -4513,6 +4513,79 @@ static const struct dmi_system_id fwbug_list[] __initconst = {
DMI_MATCH(DMI_PRODUCT_NAME, "21A1"),
}
},
+ /* https://bugzilla.kernel.org/show_bug.cgi?id=218024 */
+ {
+ .ident = "V14 G4 AMN",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "82YT"),
+ }
+ },
+ {
+ .ident = "V14 G4 AMN",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "83GE"),
+ }
+ },
+ {
+ .ident = "V15 G4 AMN",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "82YU"),
+ }
+ },
+ {
+ .ident = "V15 G4 AMN",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "83CQ"),
+ }
+ },
+ {
+ .ident = "IdeaPad 1 14AMN7",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "82VF"),
+ }
+ },
+ {
+ .ident = "IdeaPad 1 15AMN7",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "82VG"),
+ }
+ },
+ {
+ .ident = "IdeaPad 1 15AMN7",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "82X5"),
+ }
+ },
+ {
+ .ident = "IdeaPad Slim 3 14AMN8",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "82XN"),
+ }
+ },
+ {
+ .ident = "IdeaPad Slim 3 15AMN8",
+ .driver_data = &quirk_s2idle_bug,
+ .matches = {
+ DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "82XQ"),
+ }
+ },
{}
};
--
2.39.2
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH 6.1.y] platform/x86: Add s2idle quirk for more Lenovo laptops
2023-10-30 21:11 [PATCH 6.1.y] platform/x86: Add s2idle quirk for more Lenovo laptops David Lazar
@ 2023-10-30 21:29 ` Mario Limonciello
2023-10-31 11:05 ` Greg KH
0 siblings, 1 reply; 3+ messages in thread
From: Mario Limonciello @ 2023-10-30 21:29 UTC (permalink / raw)
To: David Lazar, stable; +Cc: Hans de Goede, Mark Pearson, Greg KH
On 10/30/2023 16:11, David Lazar wrote:
> commit 3bde7ec13c971445faade32172cb0b4370b841d9 upstream.
>
> When suspending to idle and resuming on some Lenovo laptops using the
> Mendocino APU, multiple NVME IOMMU page faults occur, showing up in
> dmesg as repeated errors:
>
> nvme 0000:01:00.0: AMD-Vi: Event logged [IO_PAGE_FAULT domain=0x000b
> address=0xb6674000 flags=0x0000]
>
> The system is unstable afterwards.
>
> Applying the s2idle quirk introduced by commit 455cd867b85b ("platform/x86:
> thinkpad_acpi: Add a s2idle resume quirk for a number of laptops")
> allows these systems to work with the IOMMU enabled and s2idle
> resume to work.
>
> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218024
> Suggested-by: Mario Limonciello <mario.limonciello@amd.com>
> Suggested-by: Mark Pearson <mpearson-lenovo@squebb.ca>
> Signed-off-by: David Lazar <dlazar@gmail.com>
> Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
> Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca>
> Link: https://lore.kernel.org/r/ZTlsyOaFucF2pWrL@localhost
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
As this is changed from the original commit in 6.6, you should add what
you changed in why below the commit. Something like:
Moved quirks into drivers/platform/x86/thinkpad_acpi.c since kernel 6.1
doesn't include the refactor that moved it to AMD PMC driver.
> drivers/platform/x86/thinkpad_acpi.c | 73 ++++++++++++++++++++++++++++
> 1 file changed, 73 insertions(+)
>
> diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c
> index e7ece2738de9..3bb60687f2e4 100644
> --- a/drivers/platform/x86/thinkpad_acpi.c
> +++ b/drivers/platform/x86/thinkpad_acpi.c
> @@ -4513,6 +4513,79 @@ static const struct dmi_system_id fwbug_list[] __initconst = {
> DMI_MATCH(DMI_PRODUCT_NAME, "21A1"),
> }
> },
> + /* https://bugzilla.kernel.org/show_bug.cgi?id=218024 */
> + {
> + .ident = "V14 G4 AMN",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "82YT"),
> + }
> + },
> + {
> + .ident = "V14 G4 AMN",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "83GE"),
> + }
> + },
> + {
> + .ident = "V15 G4 AMN",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "82YU"),
> + }
> + },
> + {
> + .ident = "V15 G4 AMN",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "83CQ"),
> + }
> + },
> + {
> + .ident = "IdeaPad 1 14AMN7",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "82VF"),
> + }
> + },
> + {
> + .ident = "IdeaPad 1 15AMN7",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "82VG"),
> + }
> + },
> + {
> + .ident = "IdeaPad 1 15AMN7",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "82X5"),
> + }
> + },
> + {
> + .ident = "IdeaPad Slim 3 14AMN8",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "82XN"),
> + }
> + },
> + {
> + .ident = "IdeaPad Slim 3 15AMN8",
> + .driver_data = &quirk_s2idle_bug,
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "82XQ"),
> + }
> + },
> {}
> };
>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH 6.1.y] platform/x86: Add s2idle quirk for more Lenovo laptops
2023-10-30 21:29 ` Mario Limonciello
@ 2023-10-31 11:05 ` Greg KH
0 siblings, 0 replies; 3+ messages in thread
From: Greg KH @ 2023-10-31 11:05 UTC (permalink / raw)
To: Mario Limonciello; +Cc: David Lazar, stable, Hans de Goede, Mark Pearson
On Mon, Oct 30, 2023 at 04:29:53PM -0500, Mario Limonciello wrote:
> On 10/30/2023 16:11, David Lazar wrote:
> > commit 3bde7ec13c971445faade32172cb0b4370b841d9 upstream.
> >
> > When suspending to idle and resuming on some Lenovo laptops using the
> > Mendocino APU, multiple NVME IOMMU page faults occur, showing up in
> > dmesg as repeated errors:
> >
> > nvme 0000:01:00.0: AMD-Vi: Event logged [IO_PAGE_FAULT domain=0x000b
> > address=0xb6674000 flags=0x0000]
> >
> > The system is unstable afterwards.
> >
> > Applying the s2idle quirk introduced by commit 455cd867b85b ("platform/x86:
> > thinkpad_acpi: Add a s2idle resume quirk for a number of laptops")
> > allows these systems to work with the IOMMU enabled and s2idle
> > resume to work.
> >
> > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218024
> > Suggested-by: Mario Limonciello <mario.limonciello@amd.com>
> > Suggested-by: Mark Pearson <mpearson-lenovo@squebb.ca>
> > Signed-off-by: David Lazar <dlazar@gmail.com>
> > Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
> > Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca>
> > Link: https://lore.kernel.org/r/ZTlsyOaFucF2pWrL@localhost
> > Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> > ---
>
> As this is changed from the original commit in 6.6, you should add what you
> changed in why below the commit. Something like:
>
> Moved quirks into drivers/platform/x86/thinkpad_acpi.c since kernel 6.1
> doesn't include the refactor that moved it to AMD PMC driver.
No need, I can take this as-is.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-10-31 11:05 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-30 21:11 [PATCH 6.1.y] platform/x86: Add s2idle quirk for more Lenovo laptops David Lazar
2023-10-30 21:29 ` Mario Limonciello
2023-10-31 11:05 ` Greg KH
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox