Ticket #2238: ftrace.diff

File ftrace.diff, 2.6 KB (added by fweisbec, 10 years ago)

ftrace_patch

  • arch/arm/kernel/fiq.c

    diff -rup linux-2.6.28/arch/arm/kernel/fiq.c linux-2.6.28-ftrace/arch/arm/kernel/fiq.c
    old new void set_fiq_handler(void *start, unsign 
    8888 * disable irqs for the duration.  Note - these functions are almost 
    8989 * entirely coded in assembly. 
    9090 */ 
    91 void __attribute__((naked)) set_fiq_regs(struct pt_regs *regs) 
     91void __attribute__((naked,no_instrument_function)) set_fiq_regs(struct pt_regs *regs) 
    9292{ 
    9393        register unsigned long tmp; 
    9494        asm volatile ( 
    void __attribute__((naked)) set_fiq_regs 
    106106        : "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE)); 
    107107} 
    108108 
    109 void __attribute__((naked)) get_fiq_regs(struct pt_regs *regs) 
     109void __attribute__((naked,no_instrument_function)) get_fiq_regs(struct pt_regs *regs) 
    110110{ 
    111111        register unsigned long tmp; 
    112112        asm volatile ( 
  • arch/arm/mm/copypage-v4mc.c

    diff -rup linux-2.6.28/arch/arm/mm/copypage-v4mc.c linux-2.6.28-ftrace/arch/arm/mm/copypage-v4mc.c
    old new static DEFINE_SPINLOCK(minicache_lock); 
    4444 * instruction.  If your processor does not supply this, you have to write your 
    4545 * own copy_user_page that does the right thing. 
    4646 */ 
    47 static void __attribute__((naked)) 
     47static void __attribute__((naked,no_instrument_function)) 
    4848mc_copy_user_page(void *from, void *to) 
    4949{ 
    5050        asm volatile( 
    void v4_mc_copy_user_page(void *kto, con 
    8888/* 
    8989 * ARMv4 optimised clear_user_page 
    9090 */ 
    91 void __attribute__((naked)) 
     91void __attribute__((naked,no_instrument_function)) 
    9292v4_mc_clear_user_page(void *kaddr, unsigned long vaddr) 
    9393{ 
    9494        asm volatile( 
  • arch/arm/mm/copypage-xscale.c

    diff -rup linux-2.6.28/arch/arm/mm/copypage-xscale.c linux-2.6.28-ftrace/arch/arm/mm/copypage-xscale.c
    old new static DEFINE_SPINLOCK(minicache_lock); 
    4242 * Dcache aliasing issue.  The writes will be forwarded to the write buffer, 
    4343 * and merged as appropriate. 
    4444 */ 
    45 static void __attribute__((naked)) 
     45static void __attribute__((naked,no_instrument_function)) 
    4646mc_copy_user_page(void *from, void *to) 
    4747{ 
    4848        /* 
    void xscale_mc_copy_user_page(void *kto, 
    110110/* 
    111111 * XScale optimised clear_user_page 
    112112 */ 
    113 void __attribute__((naked)) 
     113void __attribute__((naked,no_instrument_function)) 
    114114xscale_mc_clear_user_page(void *kaddr, unsigned long vaddr) 
    115115{ 
    116116        asm volatile(