From: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
To: linuxppc-dev@lists.ozlabs.org, mpe@ellerman.id.au
Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>,
linuxram@us.ibm.com, bauerman@linux.ibm.com
Subject: [PATCH v6 01/23] powerpc/book3s64/pkeys: Use PVR check instead of cpu feature
Date: Thu, 9 Jul 2020 08:59:24 +0530 [thread overview]
Message-ID: <20200709032946.881753-2-aneesh.kumar@linux.ibm.com> (raw)
In-Reply-To: <20200709032946.881753-1-aneesh.kumar@linux.ibm.com>
We are wrongly using CPU_FTRS_POWER8 to check for P8 support. Instead, we should
use PVR value. Now considering we are using CPU_FTRS_POWER8, that
implies we returned true for P9 with older firmware. Keep the same behavior
by checking for P9 PVR value.
Fixes: cf43d3b26452 ("powerpc: Enable pkey subsystem")
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
---
arch/powerpc/mm/book3s64/pkeys.c | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/arch/powerpc/mm/book3s64/pkeys.c b/arch/powerpc/mm/book3s64/pkeys.c
index ca5fcb4bff32..d69b4cfc5792 100644
--- a/arch/powerpc/mm/book3s64/pkeys.c
+++ b/arch/powerpc/mm/book3s64/pkeys.c
@@ -83,13 +83,17 @@ static int pkey_initialize(void)
scan_pkey_feature();
/*
- * Let's assume 32 pkeys on P8 bare metal, if its not defined by device
- * tree. We make this exception since skiboot forgot to expose this
- * property on power8.
+ * Let's assume 32 pkeys on P8/P9 bare metal, if its not defined by device
+ * tree. We make this exception since some version of skiboot forgot to
+ * expose this property on power8/9.
*/
- if (!pkeys_devtree_defined && !firmware_has_feature(FW_FEATURE_LPAR) &&
- cpu_has_feature(CPU_FTRS_POWER8))
- pkeys_total = 32;
+ if (!pkeys_devtree_defined && !firmware_has_feature(FW_FEATURE_LPAR)) {
+ unsigned long pvr = mfspr(SPRN_PVR);
+
+ if (PVR_VER(pvr) == PVR_POWER8 || PVR_VER(pvr) == PVR_POWER8E ||
+ PVR_VER(pvr) == PVR_POWER8NVL || PVR_VER(pvr) == PVR_POWER9)
+ pkeys_total = 32;
+ }
/*
* Adjust the upper limit, based on the number of bits supported by
--
2.26.2
next prev parent reply other threads:[~2020-07-09 3:34 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-09 3:29 [PATCH v6 00/23] powerpc/book3s/64/pkeys: Simplify the code Aneesh Kumar K.V
2020-07-09 3:29 ` Aneesh Kumar K.V [this message]
2020-07-09 3:29 ` [PATCH v6 02/23] powerpc/book3s64/pkeys: Fixup bit numbering Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 03/23] powerpc/book3s64/pkeys: pkeys are supported only on hash on book3s Aneesh Kumar K.V
2020-07-20 6:05 ` Michael Ellerman
2020-07-20 6:15 ` Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 04/23] powerpc/book3s64/pkeys: Move pkey related bits in the linux page table Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 05/23] powerpc/book3s64/pkeys: Explain key 1 reservation details Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 06/23] powerpc/book3s64/pkeys: Simplify the key initialization Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 07/23] powerpc/book3s64/pkeys: Prevent key 1 modification from userspace Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 08/23] powerpc/book3s64/pkeys: kill cpu feature key CPU_FTR_PKEY Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 09/23] powerpc/book3s64/pkeys: Simplify pkey disable branch Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 10/23] powerpc/book3s64/pkeys: Convert pkey_total to num_pkey Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 11/23] powerpc/book3s64/pkeys: Make initial_allocation_mask static Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 12/23] powerpc/book3s64/pkeys: Mark all the pkeys above max pkey as reserved Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 13/23] powerpc/book3s64/pkeys: Add MMU_FTR_PKEY Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 14/23] powerpc/book3s64/kuep: Add MMU_FTR_KUEP Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 15/23] powerpc/book3s64/pkeys: Use pkey_execute_disable_supported Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 16/23] powerpc/book3s64/pkeys: Use MMU_FTR_PKEY instead of pkey_disabled static key Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 17/23] powerpc/book3s64/keys: Print information during boot Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 18/23] powerpc/book3s64/keys/kuap: Reset AMR/IAMR values on kexec Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 19/23] powerpc/book3s64/kuap: Move UAMOR setup to key init function Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 20/23] powerpc/selftest/ptrave-pkey: Rename variables to make it easier to follow code Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 21/23] powerpc/selftest/ptrace-pkey: Update the test to mark an invalid pkey correctly Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 22/23] powerpc/selftest/ptrace-pkey: Don't update expected UAMOR value Aneesh Kumar K.V
2020-07-09 3:29 ` [PATCH v6 23/23] powerpc/book3s64/pkeys: Remove is_pkey_enabled() Aneesh Kumar K.V
2020-07-24 13:24 ` [PATCH v6 00/23] powerpc/book3s/64/pkeys: Simplify the code Michael Ellerman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200709032946.881753-2-aneesh.kumar@linux.ibm.com \
--to=aneesh.kumar@linux.ibm.com \
--cc=bauerman@linux.ibm.com \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=linuxram@us.ibm.com \
--cc=mpe@ellerman.id.au \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.