129 lines
3.1 KiB
Diff
129 lines
3.1 KiB
Diff
From: Ben Hutchings <ben@decadent.org.uk>
|
|
Date: Thu, 1 Dec 2016 23:13:38 +0000
|
|
Subject: Revert "s390: move exports to definitions"
|
|
Forwarded: not-needed
|
|
|
|
This reverts commit 711f5df7bf3ae7657e15edf76d671042c051ce95 because
|
|
symbols exported from assembly don't automatically get modversions (ABI
|
|
hashes).
|
|
---
|
|
arch/s390/include/asm/Kbuild | 1 -
|
|
arch/s390/kernel/Makefile | 2 +-
|
|
arch/s390/kernel/entry.S | 6 ------
|
|
arch/s390/kernel/mcount.S | 3 ---
|
|
arch/s390/kernel/s390_ksyms.c | 15 +++++++++++++++
|
|
arch/s390/lib/mem.S | 3 ---
|
|
6 files changed, 16 insertions(+), 14 deletions(-)
|
|
create mode 100644 arch/s390/kernel/s390_ksyms.c
|
|
|
|
--- a/arch/s390/include/asm/Kbuild
|
|
+++ b/arch/s390/include/asm/Kbuild
|
|
@@ -1,7 +1,6 @@
|
|
generic-y += asm-offsets.h
|
|
generic-y += clkdev.h
|
|
generic-y += dma-contiguous.h
|
|
-generic-y += export.h
|
|
generic-y += irq_work.h
|
|
generic-y += mcs_spinlock.h
|
|
generic-y += mm-arch-hooks.h
|
|
--- a/arch/s390/kernel/Makefile
|
|
+++ b/arch/s390/kernel/Makefile
|
|
@@ -68,7 +68,7 @@ obj-y += entry.o reipl.o relocate_kernel
|
|
|
|
extra-y += head.o head64.o vmlinux.lds
|
|
|
|
-obj-$(CONFIG_MODULES) += module.o
|
|
+obj-$(CONFIG_MODULES) += s390_ksyms.o module.o
|
|
obj-$(CONFIG_SMP) += smp.o
|
|
obj-$(CONFIG_SCHED_TOPOLOGY) += topology.o
|
|
obj-$(CONFIG_HIBERNATION) += suspend.o swsusp.o
|
|
--- a/arch/s390/kernel/entry.S
|
|
+++ b/arch/s390/kernel/entry.S
|
|
@@ -23,7 +23,6 @@
|
|
#include <asm/vx-insn.h>
|
|
#include <asm/setup.h>
|
|
#include <asm/nmi.h>
|
|
-#include <asm/export.h>
|
|
|
|
__PT_R0 = __PT_GPRS
|
|
__PT_R1 = __PT_GPRS + 8
|
|
@@ -265,8 +264,6 @@ sie_exit:
|
|
|
|
EX_TABLE(.Lrewind_pad,.Lsie_fault)
|
|
EX_TABLE(sie_exit,.Lsie_fault)
|
|
-EXPORT_SYMBOL(sie64a)
|
|
-EXPORT_SYMBOL(sie_exit)
|
|
#endif
|
|
|
|
/*
|
|
@@ -835,9 +832,6 @@ ENTRY(save_fpu_regs)
|
|
oi __LC_CPU_FLAGS+7,_CIF_FPU
|
|
br %r14
|
|
.Lsave_fpu_regs_end:
|
|
-#if IS_ENABLED(CONFIG_KVM)
|
|
-EXPORT_SYMBOL(save_fpu_regs)
|
|
-#endif
|
|
|
|
/*
|
|
* Load floating-point controls and floating-point or vector registers.
|
|
--- a/arch/s390/kernel/mcount.S
|
|
+++ b/arch/s390/kernel/mcount.S
|
|
@@ -9,7 +9,6 @@
|
|
#include <asm/asm-offsets.h>
|
|
#include <asm/ftrace.h>
|
|
#include <asm/ptrace.h>
|
|
-#include <asm/export.h>
|
|
|
|
.section .kprobes.text, "ax"
|
|
|
|
@@ -24,8 +23,6 @@ ENTRY(ftrace_stub)
|
|
ENTRY(_mcount)
|
|
br %r14
|
|
|
|
-EXPORT_SYMBOL(_mcount)
|
|
-
|
|
ENTRY(ftrace_caller)
|
|
.globl ftrace_regs_caller
|
|
.set ftrace_regs_caller,ftrace_caller
|
|
--- /dev/null
|
|
+++ b/arch/s390/kernel/s390_ksyms.c
|
|
@@ -0,0 +1,15 @@
|
|
+#include <linux/module.h>
|
|
+#include <linux/kvm_host.h>
|
|
+#include <asm/fpu/api.h>
|
|
+#include <asm/ftrace.h>
|
|
+
|
|
+#ifdef CONFIG_FUNCTION_TRACER
|
|
+EXPORT_SYMBOL(_mcount);
|
|
+#endif
|
|
+#if IS_ENABLED(CONFIG_KVM)
|
|
+EXPORT_SYMBOL(sie64a);
|
|
+EXPORT_SYMBOL(sie_exit);
|
|
+EXPORT_SYMBOL(save_fpu_regs);
|
|
+#endif
|
|
+EXPORT_SYMBOL(memcpy);
|
|
+EXPORT_SYMBOL(memset);
|
|
--- a/arch/s390/lib/mem.S
|
|
+++ b/arch/s390/lib/mem.S
|
|
@@ -5,7 +5,6 @@
|
|
*/
|
|
|
|
#include <linux/linkage.h>
|
|
-#include <asm/export.h>
|
|
|
|
/*
|
|
* void *memmove(void *dest, const void *src, size_t n)
|
|
@@ -100,7 +99,6 @@ ENTRY(memset)
|
|
xc 0(1,%r1),0(%r1)
|
|
.Lmemset_mvc:
|
|
mvc 1(1,%r1),0(%r1)
|
|
-EXPORT_SYMBOL(memset)
|
|
|
|
/*
|
|
* memcpy implementation
|
|
@@ -127,4 +125,3 @@ ENTRY(memcpy)
|
|
j .Lmemcpy_rest
|
|
.Lmemcpy_mvc:
|
|
mvc 0(1,%r1),0(%r3)
|
|
-EXPORT_SYMBOL(memcpy)
|