[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160224033419.881708048@linuxfoundation.org>
Date: Tue, 23 Feb 2016 19:33:33 -0800
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-kernel@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
stable@...r.kernel.org, Kees Cook <keescook@...omium.org>,
Laura Abbott <labbott@...hat.com>, Nishanth Menon <nm@...com>,
Richard Woodruff <r-woodruff2@...com>,
Russell King <linux@....linux.org.uk>,
Tero Kristo <t-kristo@...com>, Nicolas Pitre <nico@...aro.org>,
Tony Lindgren <tony@...mide.com>
Subject: [PATCH 4.4 082/137] ARM: OMAP2+: Fix l2_inv_api_params for rodata
4.4-stable review patch. If anyone has any objections, please let me know.
------------------
From: Tony Lindgren <tony@...mide.com>
commit 0a0b13275558c32bbf6241464a7244b1ffd5afb3 upstream.
We don't want to write to .text, so let's move l2_inv_api_params
to .data and access it via a pointer.
Cc: Kees Cook <keescook@...omium.org>
Cc: Laura Abbott <labbott@...hat.com>
Cc: Nishanth Menon <nm@...com>
Cc: Richard Woodruff <r-woodruff2@...com>
Cc: Russell King <linux@....linux.org.uk>
Cc: Tero Kristo <t-kristo@...com>
Acked-by: Nicolas Pitre <nico@...aro.org>
Fixes: 1e6b48116a95 ("ARM: mm: allow non-text sections to be
non-executable")
Signed-off-by: Tony Lindgren <tony@...mide.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
---
arch/arm/mach-omap2/sleep34xx.S | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
--- a/arch/arm/mach-omap2/sleep34xx.S
+++ b/arch/arm/mach-omap2/sleep34xx.S
@@ -427,12 +427,14 @@ skipl2dis:
and r1, #0x700
cmp r1, #0x300
beq l2_inv_gp
+ adr r0, l2_inv_api_params_offset
+ ldr r3, [r0]
+ add r3, r3, r0 @ r3 points to dummy parameters
mov r0, #40 @ set service ID for PPA
mov r12, r0 @ copy secure Service ID in r12
mov r1, #0 @ set task id for ROM code in r1
mov r2, #4 @ set some flags in r2, r6
mov r6, #0xff
- adr r3, l2_inv_api_params @ r3 points to dummy parameters
dsb @ data write barrier
dmb @ data memory barrier
smc #1 @ call SMI monitor (smi #1)
@@ -466,8 +468,8 @@ skipl2dis:
b logic_l1_restore
.align
-l2_inv_api_params:
- .word 0x1, 0x00
+l2_inv_api_params_offset:
+ .long l2_inv_api_params - .
l2_inv_gp:
/* Execute smi to invalidate L2 cache */
mov r12, #0x1 @ set up to invalidate L2
@@ -516,6 +518,10 @@ control_mem_rta:
l2dis_3630:
.word 0
+ .data
+l2_inv_api_params:
+ .word 0x1, 0x00
+
/*
* Internal functions
*/
Powered by blists - more mailing lists