[powerpc*] Fix more exported symbol versions

This commit is contained in:
Ben Hutchings 2016-12-02 02:46:58 +00:00
parent 2661eeaf78
commit ab01013e14
4 changed files with 84 additions and 0 deletions

2
debian/changelog vendored
View File

@ -14,6 +14,8 @@ linux (4.9~rc7-1~exp1) UNRELEASED; urgency=medium
* Fix exported symbol versions:
- Revert upstream changes moving exports to assembly sources
- [x86] kbuild: enable modversions for symbols exported from assembly
- [powerpc] Remove Mac-on-Linux hooks
- [powerpc*] Fix missing CRCs, add yet more asm-prototypes.h declarations
- Revert "Fix subtle CONFIG_MODVERSIONS problems"
* debian/bin/buildcheck.py: Add check for symbols with version CRC of 0

View File

@ -0,0 +1,27 @@
From: Ben Hutchings <ben@decadent.org.uk>
Date: Fri, 2 Dec 2016 01:26:54 +0000
Subject: powerpc: Fix missing CRCs, add yet more asm-prototypes.h declarations
Forwarded: https://lkml.kernel.org/r/20161202023837.GK2697@decadent.org.uk
Add declarations for:
- __mfdcr, __mtdcr (if CONFIG_PPC_DCR_NATIVE=y; through <asm/dcr.h>)
- switch_mmu_context (if CONFIG_PPC_BOOK3S_64=n; through <asm/mmu_context.h>)
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
arch/powerpc/include/asm/asm-prototypes.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/powerpc/include/asm/asm-prototypes.h b/arch/powerpc/include/asm/asm-prototypes.h
index e0baba1535e6..ba0225ff38f8 100644
--- a/arch/powerpc/include/asm/asm-prototypes.h
+++ b/arch/powerpc/include/asm/asm-prototypes.h
@@ -18,6 +18,8 @@
#include <asm/checksum.h>
#include <asm/uaccess.h>
#include <asm/epapr_hcalls.h>
+#include <asm/dcr.h>
+#include <asm/mmu_context.h>
#include <uapi/asm/ucontext.h>

View File

@ -0,0 +1,53 @@
From: Ben Hutchings <ben@decadent.org.uk>
Date: Fri, 2 Dec 2016 02:27:50 +0000
Subject: powerpc: Remove Mac-on-Linux hooks
Forwarded: https://lkml.kernel.org/r/20161202023552.GJ2697@decadent.org.uk
The symbols exported for use by MOL aren't getting CRCs and I was
about to fix that. But MOL is dead upstream, and the latest work on
it was to make it use KVM instead of its own kernel module. So remove
them instead.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
arch/powerpc/kernel/head_32.S | 7 +------
arch/powerpc/mm/hash_low_32.S | 1 -
2 files changed, 1 insertion(+), 7 deletions(-)
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S
index 9d963547d243..87998430cd9b 100644
--- a/arch/powerpc/kernel/head_32.S
+++ b/arch/powerpc/kernel/head_32.S
@@ -735,11 +735,7 @@ END_MMU_FTR_SECTION_IFSET(MMU_FTR_NEED_DTLB_SW_LRU)
EXCEPTION(0x2c00, Trap_2c, unknown_exception, EXC_XFER_EE)
EXCEPTION(0x2d00, Trap_2d, unknown_exception, EXC_XFER_EE)
EXCEPTION(0x2e00, Trap_2e, unknown_exception, EXC_XFER_EE)
- EXCEPTION(0x2f00, MOLTrampoline, unknown_exception, EXC_XFER_EE_LITE)
-
- .globl mol_trampoline
- .set mol_trampoline, i0x2f00
- EXPORT_SYMBOL(mol_trampoline)
+ EXCEPTION(0x2f00, Trap_2f, unknown_exception, EXC_XFER_EE)
. = 0x3000
@@ -1289,7 +1285,6 @@ intercept_table:
.long 0, 0, 0, 0, 0, 0, 0, 0
.long 0, 0, 0, 0, 0, 0, 0, 0
.long 0, 0, 0, 0, 0, 0, 0, 0
-EXPORT_SYMBOL(intercept_table)
/* Room for two PTE pointers, usually the kernel and current user pointers
* to their respective root page table.
diff --git a/arch/powerpc/mm/hash_low_32.S b/arch/powerpc/mm/hash_low_32.S
index 09cc50c8dace..cddf14f60bf3 100644
--- a/arch/powerpc/mm/hash_low_32.S
+++ b/arch/powerpc/mm/hash_low_32.S
@@ -34,7 +34,6 @@
.globl mmu_hash_lock
mmu_hash_lock:
.space 4
-EXPORT_SYMBOL(mmu_hash_lock)
#endif /* CONFIG_SMP */
/*

View File

@ -100,6 +100,8 @@ bugfix/s390/revert-s390-move-exports-to-definitions.patch
bugfix/m68k/revert-m68k-move-exports-to-definitions.patch
bugfix/alpha/revert-alpha-move-exports-to-actual-definitions.patch
bugfix/x86/x86-kbuild-enable-modversions-for-symbols-exported-f.patch
bugfix/powerpc/powerpc-remove-mac-on-linux-hooks.patch
bugfix/powerpc/powerpc-fix-missing-crcs-add-yet-more-asm-prototypes.patch
bugfix/all/revert-fix-subtle-config_modversions-problems.patch
# ABI maintenance