step.c (ac7c5353b189e10cf5dd27399f64f7b013abffc6) | step.c (5b0e508415a83989fe704b4718a1a214bc333ca7) |
---|---|
1/* 2 * x86 single-step support code, common to 32-bit and 64-bit. 3 */ 4#include <linux/sched.h> 5#include <linux/mm.h> 6#include <linux/ptrace.h> 7 8unsigned long convert_ip_to_linear(struct task_struct *child, struct pt_regs *regs) --- 134 unchanged lines hidden (view full) --- 143 if (child->thread.debugctlmsr == val) 144 return; 145 146 child->thread.debugctlmsr = val; 147 148 if (child != current) 149 return; 150 | 1/* 2 * x86 single-step support code, common to 32-bit and 64-bit. 3 */ 4#include <linux/sched.h> 5#include <linux/mm.h> 6#include <linux/ptrace.h> 7 8unsigned long convert_ip_to_linear(struct task_struct *child, struct pt_regs *regs) --- 134 unchanged lines hidden (view full) --- 143 if (child->thread.debugctlmsr == val) 144 return; 145 146 child->thread.debugctlmsr = val; 147 148 if (child != current) 149 return; 150 |
151 wrmsrl(MSR_IA32_DEBUGCTLMSR, val); | 151 update_debugctlmsr(val); |
152} 153 154/* 155 * Enable single or block step. 156 */ 157static void enable_step(struct task_struct *child, bool block) 158{ 159 /* --- 47 unchanged lines hidden --- | 152} 153 154/* 155 * Enable single or block step. 156 */ 157static void enable_step(struct task_struct *child, bool block) 158{ 159 /* --- 47 unchanged lines hidden --- |