lkml.org 
[lkml]   [2015]   [Jun]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 11/19] ARC: entry.S: comments cleanup
Date
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
---
arch/arc/kernel/entry.S | 46 ++++++++++++++++++++--------------------------
1 file changed, 20 insertions(+), 26 deletions(-)

diff --git a/arch/arc/kernel/entry.S b/arch/arc/kernel/entry.S
index b120f3e1e13e..a07cec4688ce 100644
--- a/arch/arc/kernel/entry.S
+++ b/arch/arc/kernel/entry.S
@@ -322,13 +322,8 @@ ENTRY(EV_TLBProtV)

EXCEPTION_PROLOGUE

- ;---------(3) Save some more regs-----------------
- ; vineetg: Mar 6th: Random Seg Fault issue #1
- ; ecr and efa were not saved in case an Intr sneaks in
- ; after fake rtie
-
lr r2, [ecr]
- lr r0, [efa] ; Faulting Data address
+ lr r0, [efa] ; Faulting Data address (not part of pt_regs saved above)

; Exception auto-disables further Intr/exceptions.
; Re-enable them by pretending to return from exception
@@ -336,7 +331,7 @@ ENTRY(EV_TLBProtV)

FAKE_RET_FROM_EXCPN

- mov r1, sp
+ mov r1, sp ; Handle to pt_regs

;------ (5) Type of Protection Violation? ----------
;
@@ -415,8 +410,11 @@ ENTRY(EV_Extension)
b ret_from_exception
END(EV_Extension)

-;######################### System Call Tracing #########################
+;################ Trap Handling (Syscall, Breakpoint) ##################

+; ---------------------------------------------
+; syscall Tracing
+; ---------------------------------------------
tracesys:
; save EFA in case tracer wants the PC of traced task
; using ERET won't work since next-PC has already committed
@@ -459,10 +457,9 @@ tracesys_exit:
b ret_from_exception ; NOT ret_from_system_call at is saves r0 which
; we'd done before calling post hook above

-;################### Break Point TRAP ##########################
-
- ; ======= (5b) Trap is due to Break-Point =========
-
+; ---------------------------------------------
+; Breakpoint TRAP
+; ---------------------------------------------
trap_with_param:

; stop_pc info by gdb needs this info
@@ -490,36 +487,33 @@ trap_with_param:

b ret_from_exception

-;##################### Trap Handling ##############################
-;
-; EV_Trap caused by TRAP_S and TRAP0 instructions.
-;------------------------------------------------------------------
-; (1) System Calls
-; :parameters in r0-r7.
-; :r8 has the system call number
-; (2) Break Points
-;------------------------------------------------------------------
+; ---------------------------------------------
+; syscall TRAP
+; ABI: (r0-r7) upto 8 args, (r8) syscall number
+; ---------------------------------------------

ENTRY(EV_Trap)

EXCEPTION_PROLOGUE

- ;------- (4) What caused the Trap --------------
+ ;============ TRAP 1 :breakpoints
lr r10, [ecr]
bmsk.f 0, r10, 7
bnz trap_with_param

- ; ======= (5a) Trap is due to System Call ========
+ ;============ TRAP (no param): syscall top level

+ ; First return from Exception to pure K mode (Exception/IRQs renabled)
FAKE_RET_FROM_EXCPN

- ; If syscall tracing ongoing, invoke pre-pos-hooks
+ ; If syscall tracing ongoing, invoke pre-post-hooks
GET_CURR_THR_INFO_FLAGS r10
btst r10, TIF_SYSCALL_TRACE
bnz tracesys ; this never comes back

- ;============ This is normal System Call case ==========
- ; Sys-call num shd not exceed the total system calls avail
+ ;============ Normal syscall case
+
+ ; syscall num shd not exceed the total system calls avail
cmp r8, NR_syscalls
mov.hi r0, -ENOSYS
bhi ret_from_system_call
--
1.9.1


\
 
 \ /
  Last update: 2015-06-07 11:01    [W:0.079 / U:0.612 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site