]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
KAISER KABI tweaks.
authorMartin K. Petersen <martin.petersen@oracle.com>
Thu, 4 Jan 2018 21:45:34 +0000 (16:45 -0500)
committerKirtikar Kashyap <kirtikar.kashyap@oracle.com>
Fri, 12 Jan 2018 18:20:11 +0000 (10:20 -0800)
Makes KPTI KABI compatible.

Orabug: 27333760
CVE: CVE-2017-5754

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Pavel Tatashin <pasha.tatashin@oracle.com>
Signed-off-by: Kirtikar Kashyap <kirtikar.kashyap@oracle.com>
arch/x86/include/asm/processor.h
arch/x86/kernel/process.c
include/linux/mmzone.h
mm/vmstat.c

index 77038e5aefaa716b8f8eb6180bcf86771fc91da3..3154597bfb17aeb7ba187dd957ad384e3efb4563 100644 (file)
@@ -300,7 +300,11 @@ struct tss_struct {
 
 } ____cacheline_aligned;
 
+#ifndef __GENKSYMS__
 DECLARE_PER_CPU_SHARED_ALIGNED_USER_MAPPED(struct tss_struct, cpu_tss);
+#else
+DECLARE_PER_CPU_SHARED_ALIGNED(struct tss_struct, cpu_tss);
+#endif
 
 #ifdef CONFIG_X86_32
 DECLARE_PER_CPU(unsigned long, cpu_current_top_of_stack);
index 87c2996f16881343e1a3c2b6a693a758d89aba17..f6c1cea968d9e2927771cd0a0352316b8978b3f1 100644 (file)
  * section. Since TSS's are completely CPU-local, we want them
  * on exact cacheline boundaries, to eliminate cacheline ping-pong.
  */
+#ifndef __GENKSYMS__
 __visible DEFINE_PER_CPU_SHARED_ALIGNED_USER_MAPPED(struct tss_struct, cpu_tss) = {
+#else
+__visible DEFINE_PER_CPU_SHARED_ALIGNED(struct tss_struct, cpu_tss) = {
+#endif
        .x86_tss = {
                .sp0 = TOP_OF_INIT_STACK,
 #ifdef CONFIG_X86_32
index 1b01724737682d2d13cb93cc27ff2369e9733e89..8871198822969b5d5885d9baf1a5ed108108d23a 100644 (file)
@@ -131,9 +131,11 @@ enum zone_stat_item {
        NR_SLAB_RECLAIMABLE,
        NR_SLAB_UNRECLAIMABLE,
        NR_PAGETABLE,           /* used for pagetables */
-       /* Second 128 byte cacheline */
        NR_KERNEL_STACK,
+       /* Second 128 byte cacheline */
+#ifndef __GENKSYMS__
        NR_KAISERTABLE,
+#endif
        NR_UNSTABLE_NFS,        /* NFS unstable pages */
        NR_BOUNCE,
        NR_VMSCAN_WRITE,
index 8e0cbcd0fccc89db543a871dd67898a9c5902fce..9152387d34f5ca6b60a3c15c6c932b94477e4bc6 100644 (file)
@@ -714,7 +714,9 @@ const char * const vmstat_text[] = {
        "nr_slab_unreclaimable",
        "nr_page_table_pages",
        "nr_kernel_stack",
+#ifndef __GENKSYMS__
        "nr_overhead",
+#endif
        "nr_unstable",
        "nr_bounce",
        "nr_vmscan_write",