diff options
Diffstat (limited to 'arch/sh/kernel/kprobes.c')
| -rw-r--r-- | arch/sh/kernel/kprobes.c | 30 | 
1 files changed, 15 insertions, 15 deletions
diff --git a/arch/sh/kernel/kprobes.c b/arch/sh/kernel/kprobes.c index 42b46e61a2d..83acbf3f6de 100644 --- a/arch/sh/kernel/kprobes.c +++ b/arch/sh/kernel/kprobes.c @@ -102,7 +102,7 @@ int __kprobes kprobe_handle_illslot(unsigned long pc)  void __kprobes arch_remove_kprobe(struct kprobe *p)  { -	struct kprobe *saved = &__get_cpu_var(saved_next_opcode); +	struct kprobe *saved = this_cpu_ptr(&saved_next_opcode);  	if (saved->addr) {  		arch_disarm_kprobe(p); @@ -111,7 +111,7 @@ void __kprobes arch_remove_kprobe(struct kprobe *p)  		saved->addr = NULL;  		saved->opcode = 0; -		saved = &__get_cpu_var(saved_next_opcode2); +		saved = this_cpu_ptr(&saved_next_opcode2);  		if (saved->addr) {  			arch_disarm_kprobe(saved); @@ -129,14 +129,14 @@ static void __kprobes save_previous_kprobe(struct kprobe_ctlblk *kcb)  static void __kprobes restore_previous_kprobe(struct kprobe_ctlblk *kcb)  { -	__get_cpu_var(current_kprobe) = kcb->prev_kprobe.kp; +	__this_cpu_write(current_kprobe, kcb->prev_kprobe.kp);  	kcb->kprobe_status = kcb->prev_kprobe.status;  }  static void __kprobes set_current_kprobe(struct kprobe *p, struct pt_regs *regs,  					 struct kprobe_ctlblk *kcb)  { -	__get_cpu_var(current_kprobe) = p; +	__this_cpu_write(current_kprobe, p);  }  /* @@ -146,15 +146,15 @@ static void __kprobes set_current_kprobe(struct kprobe *p, struct pt_regs *regs,   */  static void __kprobes prepare_singlestep(struct kprobe *p, struct pt_regs *regs)  { -	__get_cpu_var(saved_current_opcode).addr = (kprobe_opcode_t *)regs->pc; +	__this_cpu_write(saved_current_opcode.addr, (kprobe_opcode_t *)regs->pc);  	if (p != NULL) {  		struct kprobe *op1, *op2;  		arch_disarm_kprobe(p); -		op1 = &__get_cpu_var(saved_next_opcode); -		op2 = &__get_cpu_var(saved_next_opcode2); +		op1 = this_cpu_ptr(&saved_next_opcode); +		op2 = this_cpu_ptr(&saved_next_opcode2);  		if (OPCODE_JSR(p->opcode) || OPCODE_JMP(p->opcode)) {  			unsigned int reg_nr = ((p->opcode >> 8) & 0x000F); @@ -249,7 +249,7 @@ static int __kprobes kprobe_handler(struct pt_regs *regs)  			kcb->kprobe_status = KPROBE_REENTER;  			return 1;  		} else { -			p = __get_cpu_var(current_kprobe); +			p = __this_cpu_read(current_kprobe);  			if (p->break_handler && p->break_handler(p, regs)) {  				goto ss_probe;  			} @@ -336,9 +336,9 @@ int __kprobes trampoline_probe_handler(struct kprobe *p, struct pt_regs *regs)  			continue;  		if (ri->rp && ri->rp->handler) { -			__get_cpu_var(current_kprobe) = &ri->rp->kp; +			__this_cpu_write(current_kprobe, &ri->rp->kp);  			ri->rp->handler(ri, regs); -			__get_cpu_var(current_kprobe) = NULL; +			__this_cpu_write(current_kprobe, NULL);  		}  		orig_ret_address = (unsigned long)ri->ret_addr; @@ -383,19 +383,19 @@ static int __kprobes post_kprobe_handler(struct pt_regs *regs)  		cur->post_handler(cur, regs, 0);  	} -	p = &__get_cpu_var(saved_next_opcode); +	p = this_cpu_ptr(&saved_next_opcode);  	if (p->addr) {  		arch_disarm_kprobe(p);  		p->addr = NULL;  		p->opcode = 0; -		addr = __get_cpu_var(saved_current_opcode).addr; -		__get_cpu_var(saved_current_opcode).addr = NULL; +		addr = __this_cpu_read(saved_current_opcode.addr); +		__this_cpu_write(saved_current_opcode.addr, NULL);  		p = get_kprobe(addr);  		arch_arm_kprobe(p); -		p = &__get_cpu_var(saved_next_opcode2); +		p = this_cpu_ptr(&saved_next_opcode2);  		if (p->addr) {  			arch_disarm_kprobe(p);  			p->addr = NULL; @@ -511,7 +511,7 @@ int __kprobes kprobe_exceptions_notify(struct notifier_block *self,  				if (kprobe_handler(args->regs)) {  					ret = NOTIFY_STOP;  				} else { -					p = __get_cpu_var(current_kprobe); +					p = __this_cpu_read(current_kprobe);  					if (p->break_handler &&  					    p->break_handler(p, args->regs))  						ret = NOTIFY_STOP;  | 
