OSDN Git Service

sh: Replace __get_cpu_var uses
[uclinux-h8/linux.git] / arch / sh / kernel / kprobes.c
index 42b46e6..83acbf3 100644 (file)
@@ -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;