diff options
-rw-r--r-- | arch/arm/kernel/entry-armv.S | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S index 920dd3d07957..f863ee79093e 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S | |||
@@ -421,6 +421,11 @@ ENDPROC(__pabt_svc) | |||
421 | .align 5 | 421 | .align 5 |
422 | __dabt_usr: | 422 | __dabt_usr: |
423 | usr_entry | 423 | usr_entry |
424 | |||
425 | #ifdef CONFIG_IRQSOFF_TRACER | ||
426 | bl trace_hardirqs_off | ||
427 | #endif | ||
428 | |||
424 | kuser_cmpxchg_check | 429 | kuser_cmpxchg_check |
425 | dabt_helper | 430 | dabt_helper |
426 | 431 | ||
@@ -433,12 +438,12 @@ ENDPROC(__dabt_usr) | |||
433 | .align 5 | 438 | .align 5 |
434 | __irq_usr: | 439 | __irq_usr: |
435 | usr_entry | 440 | usr_entry |
436 | kuser_cmpxchg_check | ||
437 | 441 | ||
438 | #ifdef CONFIG_IRQSOFF_TRACER | 442 | #ifdef CONFIG_IRQSOFF_TRACER |
439 | bl trace_hardirqs_off | 443 | bl trace_hardirqs_off |
440 | #endif | 444 | #endif |
441 | 445 | ||
446 | kuser_cmpxchg_check | ||
442 | irq_handler | 447 | irq_handler |
443 | get_thread_info tsk | 448 | get_thread_info tsk |
444 | mov why, #0 | 449 | mov why, #0 |
@@ -451,6 +456,11 @@ ENDPROC(__irq_usr) | |||
451 | .align 5 | 456 | .align 5 |
452 | __und_usr: | 457 | __und_usr: |
453 | usr_entry | 458 | usr_entry |
459 | |||
460 | #ifdef CONFIG_IRQSOFF_TRACER | ||
461 | bl trace_hardirqs_off | ||
462 | #endif | ||
463 | |||
454 | mov r2, r4 | 464 | mov r2, r4 |
455 | mov r3, r5 | 465 | mov r3, r5 |
456 | 466 | ||
@@ -669,6 +679,11 @@ ENDPROC(__und_usr_unknown) | |||
669 | .align 5 | 679 | .align 5 |
670 | __pabt_usr: | 680 | __pabt_usr: |
671 | usr_entry | 681 | usr_entry |
682 | |||
683 | #ifdef CONFIG_IRQSOFF_TRACER | ||
684 | bl trace_hardirqs_off | ||
685 | #endif | ||
686 | |||
672 | pabt_helper | 687 | pabt_helper |
673 | mov r2, sp @ regs | 688 | mov r2, sp @ regs |
674 | bl do_PrefetchAbort @ call abort handler | 689 | bl do_PrefetchAbort @ call abort handler |