Interrupt handlers on 64s systems will often need to save register state
from the interrupted process to make space for loading special purpose
registers or for internal state.

Fix a comment documenting a common code path macro in the beginning of
interrupt handlers where r10 is saved to the PACA to afford space for
the value of the CFAR. Comment is currently written as if r10-r12 are
saved to PACA, but in fact only r10 is saved, with r11-r12 saved much
later. The distance in code between these saves has grown over the many
revisions of this macro. Fix this by signalling with a comment where
r11-r12 are saved to the PACA.

Signed-off-by: Rohan McLure <rmcl...@linux.ibm.com>
Reported-by: Nicholas Piggin <npig...@gmail.com>
Reviewed-by: Nicholas Piggin <npig...@gmail.com>
---
V2: Given its own commit
V3: Annotate r11-r12 save locations with comment.
---
 arch/powerpc/kernel/exceptions-64s.S | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kernel/exceptions-64s.S 
b/arch/powerpc/kernel/exceptions-64s.S
index 3d0dc133a9ae..a3b51441b039 100644
--- a/arch/powerpc/kernel/exceptions-64s.S
+++ b/arch/powerpc/kernel/exceptions-64s.S
@@ -281,7 +281,7 @@ BEGIN_FTR_SECTION
        mfspr   r9,SPRN_PPR
 END_FTR_SECTION_IFSET(CPU_FTR_HAS_PPR)
        HMT_MEDIUM
-       std     r10,IAREA+EX_R10(r13)           /* save r10 - r12 */
+       std     r10,IAREA+EX_R10(r13)           /* save r10 */
        .if ICFAR
 BEGIN_FTR_SECTION
        mfspr   r10,SPRN_CFAR
@@ -321,7 +321,7 @@ END_FTR_SECTION_IFSET(CPU_FTR_CFAR)
        mfctr   r10
        std     r10,IAREA+EX_CTR(r13)
        mfcr    r9
-       std     r11,IAREA+EX_R11(r13)
+       std     r11,IAREA+EX_R11(r13)           /* save r11 - r12 */
        std     r12,IAREA+EX_R12(r13)
 
        /*
-- 
2.34.1

Reply via email to