[PATCH] PPC64: Abolish broken nested feature sections
David Gibson
david at gibson.dropbear.id.au
Tue Aug 30 12:54:07 EST 2005
The {BEGIN,END}_FTR_SECTION asm macros used in ppc64 to nop out
sections of code at runtime cannot be nested. However, we do nest
them in hash_low.S. We get away with it there, because there is
nothing between the BEGIN markers for each section. However, that's
confusing to someone reading the code.
This patch removes the nested ifset and ifclr feature sections,
replacing them with a single feature section in the full mask/value
form.
Signed-off-by: David Gibson <dwg at au1.ibm.com>
---
arch/ppc64/mm/hash_low.S | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
Index: working-2.6/arch/ppc64/mm/hash_low.S
===================================================================
--- working-2.6.orig/arch/ppc64/mm/hash_low.S 2005-07-26 10:36:48.000000000 +1000
+++ working-2.6/arch/ppc64/mm/hash_low.S 2005-07-26 17:35:49.000000000 +1000
@@ -129,12 +129,10 @@
* code rather than call a C function...)
*/
BEGIN_FTR_SECTION
-BEGIN_FTR_SECTION
mr r4,r30
mr r5,r7
bl .hash_page_do_lazy_icache
-END_FTR_SECTION_IFSET(CPU_FTR_NOEXECUTE)
-END_FTR_SECTION_IFCLR(CPU_FTR_COHERENT_ICACHE)
+END_FTR_SECTION(CPU_FTR_NOEXECUTE|CPU_FTR_COHERENT_ICACHE, CPU_FTR_NOEXECUTE)
/* At this point, r3 contains new PP bits, save them in
* place of "access" in the param area (sic)
More information about the Linuxppc64-dev
mailing list