Skip to content

Commit

Permalink
ARC: entry.S: comments cleanup
Browse files Browse the repository at this point in the history
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
  • Loading branch information
Vineet Gupta committed Jun 19, 2015
1 parent a8717d2 commit 4bf4564
Showing 1 changed file with 20 additions and 26 deletions.
46 changes: 20 additions & 26 deletions arch/arc/kernel/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -322,21 +322,16 @@ 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 addr (not part of pt_regs saved above)

; Exception auto-disables further Intr/exceptions.
; Re-enable them by pretending to return from exception
; (so rest of handler executes in pure K mode)

FAKE_RET_FROM_EXCPN

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

;------ (5) Type of Protection Violation? ----------
;
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down

0 comments on commit 4bf4564

Please sign in to comment.