From: Greg Kroah-Hartman Date: Wed, 31 Jul 2024 06:08:27 +0000 (+0200) Subject: 6.1-stable patches X-Git-Tag: v6.1.103~7 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=07b8298203199f0684dfb4ee113f2a5a35aefa26;p=thirdparty%2Fkernel%2Fstable-queue.git 6.1-stable patches added patches: powerpc-pseries-avoid-hcall-in-plpks_is_available-on-non-pseries.patch --- diff --git a/queue-6.1/powerpc-pseries-avoid-hcall-in-plpks_is_available-on-non-pseries.patch b/queue-6.1/powerpc-pseries-avoid-hcall-in-plpks_is_available-on-non-pseries.patch new file mode 100644 index 00000000000..78f60c01a53 --- /dev/null +++ b/queue-6.1/powerpc-pseries-avoid-hcall-in-plpks_is_available-on-non-pseries.patch @@ -0,0 +1,44 @@ +From f82cdc37c4bd4ba905bf99ade9782a639b5c12e9 Mon Sep 17 00:00:00 2001 +From: Russell Currey +Date: Wed, 22 Feb 2023 13:17:08 +1100 +Subject: powerpc/pseries: Avoid hcall in plpks_is_available() on non-pseries + +From: Russell Currey + +commit f82cdc37c4bd4ba905bf99ade9782a639b5c12e9 upstream. + +plpks_is_available() can be called on any platform via kexec but calls +_plpks_get_config() which makes a hcall, which will only work on pseries. +Fix this by returning early in plpks_is_available() if hcalls aren't +possible. + +Fixes: 119da30d037d ("powerpc/pseries: Expose PLPKS config values, support additional fields") +Reported-by: Murphy Zhou +Signed-off-by: Russell Currey +Signed-off-by: Michael Ellerman +Link: https://lore.kernel.org/r/20230222021708.146257-1-ruscur@russell.cc +Signed-off-by: Greg Kroah-Hartman +--- + arch/powerpc/platforms/pseries/plpks.c | 4 ++++ + 1 file changed, 4 insertions(+) + +--- a/arch/powerpc/platforms/pseries/plpks.c ++++ b/arch/powerpc/platforms/pseries/plpks.c +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include + + static u8 *ospassword; + static u16 ospasswordlength; +@@ -357,6 +358,9 @@ bool plpks_is_available(void) + { + int rc; + ++ if (!firmware_has_feature(FW_FEATURE_LPAR)) ++ return false; ++ + rc = _plpks_get_config(); + if (rc) + return false; diff --git a/queue-6.1/series b/queue-6.1/series index e891f43fff5..5a80f6be7e8 100644 --- a/queue-6.1/series +++ b/queue-6.1/series @@ -438,3 +438,4 @@ iommu-sprd-avoid-null-deref-in-sprd_iommu_hw_en.patch io_uring-fix-io_match_task-must_hold.patch nvme-pci-add-missing-condition-check-for-existence-o.patch fs-don-t-allow-non-init-s_user_ns-for-filesystems-wi.patch +powerpc-pseries-avoid-hcall-in-plpks_is_available-on-non-pseries.patch