projects
/
cascardo
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] alpha: task_thread_info()
[cascardo/linux.git]
/
arch
/
alpha
/
kernel
/
ptrace.c
diff --git
a/arch/alpha/kernel/ptrace.c
b/arch/alpha/kernel/ptrace.c
index
9969d21
..
961008c
100644
(file)
--- a/
arch/alpha/kernel/ptrace.c
+++ b/
arch/alpha/kernel/ptrace.c
@@
-103,9
+103,9
@@
get_reg_addr(struct task_struct * task, unsigned long regno)
unsigned long *addr;
if (regno == 30) {
unsigned long *addr;
if (regno == 30) {
- addr = &task
->thread_info
->pcb.usp;
+ addr = &task
_thread_info(task)
->pcb.usp;
} else if (regno == 65) {
} else if (regno == 65) {
- addr = &task
->thread_info
->pcb.unique;
+ addr = &task
_thread_info(task)
->pcb.unique;
} else if (regno == 31 || regno > 65) {
zero = 0;
addr = &zero;
} else if (regno == 31 || regno > 65) {
zero = 0;
addr = &zero;
@@
-125,7
+125,7
@@
get_reg(struct task_struct * task, unsigned long regno)
if (regno == 63) {
unsigned long fpcr = *get_reg_addr(task, regno);
unsigned long swcr
if (regno == 63) {
unsigned long fpcr = *get_reg_addr(task, regno);
unsigned long swcr
- = task
->thread_info
->ieee_state & IEEE_SW_MASK;
+ = task
_thread_info(task)
->ieee_state & IEEE_SW_MASK;
swcr = swcr_update_status(swcr, fpcr);
return fpcr | swcr;
}
swcr = swcr_update_status(swcr, fpcr);
return fpcr | swcr;
}
@@
-139,8
+139,8
@@
static int
put_reg(struct task_struct *task, unsigned long regno, unsigned long data)
{
if (regno == 63) {
put_reg(struct task_struct *task, unsigned long regno, unsigned long data)
{
if (regno == 63) {
- task
->thread_info
->ieee_state
- = ((task
->thread_info
->ieee_state & ~IEEE_SW_MASK)
+ task
_thread_info(task)
->ieee_state
+ = ((task
_thread_info(task)
->ieee_state & ~IEEE_SW_MASK)
| (data & IEEE_SW_MASK));
data = (data & FPCR_DYN_MASK) | ieee_swcr_to_fpcr(data);
}
| (data & IEEE_SW_MASK));
data = (data & FPCR_DYN_MASK) | ieee_swcr_to_fpcr(data);
}
@@
-188,35
+188,35
@@
ptrace_set_bpt(struct task_struct * child)
* branch (emulation can be tricky for fp branches).
*/
displ = ((s32)(insn << 11)) >> 9;
* branch (emulation can be tricky for fp branches).
*/
displ = ((s32)(insn << 11)) >> 9;
-
child->thread_info
->bpt_addr[nsaved++] = pc + 4;
+
task_thread_info(child)
->bpt_addr[nsaved++] = pc + 4;
if (displ) /* guard against unoptimized code */
if (displ) /* guard against unoptimized code */
-
child->thread_info
->bpt_addr[nsaved++]
+
task_thread_info(child)
->bpt_addr[nsaved++]
= pc + 4 + displ;
DBG(DBG_BPT, ("execing branch\n"));
} else if (op_code == 0x1a) {
reg_b = (insn >> 16) & 0x1f;
= pc + 4 + displ;
DBG(DBG_BPT, ("execing branch\n"));
} else if (op_code == 0x1a) {
reg_b = (insn >> 16) & 0x1f;
-
child->thread_info
->bpt_addr[nsaved++] = get_reg(child, reg_b);
+
task_thread_info(child)
->bpt_addr[nsaved++] = get_reg(child, reg_b);
DBG(DBG_BPT, ("execing jump\n"));
} else {
DBG(DBG_BPT, ("execing jump\n"));
} else {
-
child->thread_info
->bpt_addr[nsaved++] = pc + 4;
+
task_thread_info(child)
->bpt_addr[nsaved++] = pc + 4;
DBG(DBG_BPT, ("execing normal insn\n"));
}
/* install breakpoints: */
for (i = 0; i < nsaved; ++i) {
DBG(DBG_BPT, ("execing normal insn\n"));
}
/* install breakpoints: */
for (i = 0; i < nsaved; ++i) {
- res = read_int(child,
child->thread_info
->bpt_addr[i],
+ res = read_int(child,
task_thread_info(child)
->bpt_addr[i],
(int *) &insn);
if (res < 0)
return res;
(int *) &insn);
if (res < 0)
return res;
-
child->thread_info
->bpt_insn[i] = insn;
+
task_thread_info(child)
->bpt_insn[i] = insn;
DBG(DBG_BPT, (" -> next_pc=%lx\n",
DBG(DBG_BPT, (" -> next_pc=%lx\n",
-
child->thread_info
->bpt_addr[i]));
- res = write_int(child,
child->thread_info
->bpt_addr[i],
+
task_thread_info(child)
->bpt_addr[i]));
+ res = write_int(child,
task_thread_info(child)
->bpt_addr[i],
BREAKINST);
if (res < 0)
return res;
}
BREAKINST);
if (res < 0)
return res;
}
-
child->thread_info
->bpt_nsaved = nsaved;
+
task_thread_info(child)
->bpt_nsaved = nsaved;
return 0;
}
return 0;
}
@@
-227,9
+227,9
@@
ptrace_set_bpt(struct task_struct * child)
int
ptrace_cancel_bpt(struct task_struct * child)
{
int
ptrace_cancel_bpt(struct task_struct * child)
{
- int i, nsaved =
child->thread_info
->bpt_nsaved;
+ int i, nsaved =
task_thread_info(child)
->bpt_nsaved;
-
child->thread_info
->bpt_nsaved = 0;
+
task_thread_info(child)
->bpt_nsaved = 0;
if (nsaved > 2) {
printk("ptrace_cancel_bpt: bogus nsaved: %d!\n", nsaved);
if (nsaved > 2) {
printk("ptrace_cancel_bpt: bogus nsaved: %d!\n", nsaved);
@@
-237,8
+237,8
@@
ptrace_cancel_bpt(struct task_struct * child)
}
for (i = 0; i < nsaved; ++i) {
}
for (i = 0; i < nsaved; ++i) {
- write_int(child,
child->thread_info
->bpt_addr[i],
-
child->thread_info
->bpt_insn[i]);
+ write_int(child,
task_thread_info(child)
->bpt_addr[i],
+
task_thread_info(child)
->bpt_insn[i]);
}
return (nsaved != 0);
}
}
return (nsaved != 0);
}
@@
-355,7
+355,7
@@
do_sys_ptrace(long request, long pid, long addr, long data,
if (!valid_signal(data))
break;
/* Mark single stepping. */
if (!valid_signal(data))
break;
/* Mark single stepping. */
-
child->thread_info
->bpt_nsaved = -1;
+
task_thread_info(child)
->bpt_nsaved = -1;
clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
child->exit_code = data;
wake_up_process(child);
clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
child->exit_code = data;
wake_up_process(child);