summaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>2016-07-23 11:12:38 +0200
committerMichael Ellerman <mpe@ellerman.id.au>2016-08-01 03:15:02 +0200
commit309b315b6ec686ce050758cc4e29f6ad1125a83f (patch)
treefc86bb90d18e982e38e695161ecc3488c62f618a /arch/powerpc
parentjump_label: Make it possible for arches to invoke jump_label_init() earlier (diff)
downloadlinux-309b315b6ec686ce050758cc4e29f6ad1125a83f.tar.xz
linux-309b315b6ec686ce050758cc4e29f6ad1125a83f.zip
powerpc: Call jump_label_init() in apply_feature_fixups()
Call jump_label_init() early so that we can use static keys for CPU and MMU feature checks. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc')
-rw-r--r--arch/powerpc/lib/feature-fixups.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/lib/feature-fixups.c b/arch/powerpc/lib/feature-fixups.c
index 59c7caee05b2..ae57de78e2aa 100644
--- a/arch/powerpc/lib/feature-fixups.c
+++ b/arch/powerpc/lib/feature-fixups.c
@@ -13,6 +13,7 @@
*/
#include <linux/types.h>
+#include <linux/jump_label.h>
#include <linux/kernel.h>
#include <linux/string.h>
#include <linux/init.h>
@@ -187,6 +188,13 @@ void __init apply_feature_fixups(void)
&__start___fw_ftr_fixup, &__stop___fw_ftr_fixup);
#endif
do_final_fixups();
+
+ /*
+ * Initialise jump label. This causes all the cpu/mmu_has_feature()
+ * checks to take on their correct polarity based on the current set of
+ * CPU/MMU features.
+ */
+ jump_label_init();
}
static int __init check_features(void)