[PATCH 1/2] powerpc: Remove Mac-on-Linux hooks

Subsystems: linux for powerpc (32-bit and 64-bit), the rest

STALE3445d

6 messages, 3 authors, 2017-03-21 · open the first message on its own page

[PATCH 1/2] powerpc: Remove Mac-on-Linux hooks

From: Ben Hutchings <hidden>
Date: 2016-12-02 02:36:03

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 <redacted>
---
 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 */
 
 /*

[PATCH 2/2] powerpc: Fix missing CRCs, add yet more asm-prototypes.h declarations

From: Ben Hutchings <hidden>
Date: 2016-12-02 02:38:41

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 <redacted>
---
I checked all the symbols potentially exported from assembly under
arch/powerpc, and these seem to be the only ones not yet declared
through asm-prototypes.h (aside from those supporting Mac-on-Linux
which are removed by the previous patch).

Ben.

 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>
 

Re: [PATCH 1/2] powerpc: Remove Mac-on-Linux hooks

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-12-02 03:56:48

Ben Hutchings [off-list ref] writes:
[ Unknown signature status ]
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.
Sounds good to me.
quoted hunk
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)
I don't see intercept_table used anywhere, so I think we can just remove
it entirely?
quoted hunk
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 */
And now mmu_hash_lock is only used in this file, so doesn't need to be
global anymore.

I can fix both of those up here, will just wait a bit to see if anyone
else has comments.

cheers

Re: [PATCH 1/2] powerpc: Remove Mac-on-Linux hooks

From: Ben Hutchings <hidden>
Date: 2016-12-02 05:05:48

On Fri, Dec 02, 2016 at 02:56:47PM +1100, Michael Ellerman wrote:
Ben Hutchings [off-list ref] writes:
quoted
[ Unknown signature status ]
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.
Sounds good to me.
quoted
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)
I don't see intercept_table used anywhere, so I think we can just remove
it entirely?
That's strange, so it's actually constant data.

And... I've managed to confuse myself about which symbols are for
MOL.  This one was actually used by rtlinux, which AFAICS is also
long dead.
 
quoted
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 */
And now mmu_hash_lock is only used in this file, so doesn't need to be
global anymore.
Right.

Ben.
I can fix both of those up here, will just wait a bit to see if anyone
else has comments.

cheers
-- 
Ben Hutchings
It's easier to fight for one's principles than to live up to them.

Re: [1/2] powerpc: Remove Mac-on-Linux hooks

From: Michael Ellerman <hidden>
Date: 2017-03-21 11:36:09

On Fri, 2016-12-02 at 02:35:52 UTC, Ben Hutchings wrote:
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 <redacted>
Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/3072601375ffff92bddd0ce810dd64

cheers

Re: [2/2] powerpc: Fix missing CRCs, add yet more asm-prototypes.h declarations

From: Michael Ellerman <hidden>
Date: 2017-03-21 11:36:09

On Fri, 2016-12-02 at 02:38:38 UTC, Ben Hutchings wrote:
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 <redacted>
Applied to powerpc next, thanks.

https://git.kernel.org/powerpc/c/43a8888f0a70db62488fc3ad1505f6

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help