Commit ef9c8db4 authored by David Mosberger's avatar David Mosberger

ia64: Fix several small bugs/omissions from the 2.5.64 sync.

parent 01cbbadc
......@@ -746,7 +746,7 @@ dup_task_struct(struct task_struct *orig)
memcpy(tsk, orig, sizeof(struct task_struct) + sizeof(struct thread_info));
tsk->thread_info = (struct thread_info *) ((char *) tsk + IA64_TASK_SIZE);
atomic_set(&tsk->usage, 1);
atomic_set(&tsk->usage, 2);
return tsk;
}
......
......@@ -242,7 +242,7 @@ get_scratch_regs (struct unw_frame_info *info)
info->pt = info->sp - 16;
}
UNW_DPRINT(3, "unwind.%s: sp 0x%lx pt 0x%lx\n", __FUNCTION__, info->sp, info->pt);
return info->pt;
return (struct pt_regs *) info->pt;
}
int
......@@ -1641,7 +1641,6 @@ run_script (struct unw_script *script, struct unw_frame_info *state)
struct unw_insn *ip, *limit, next_insn;
unsigned long opc, dst, val, off;
unsigned long *s = (unsigned long *) state;
struct pt_regs *pt;
STAT(unsigned long start;)
STAT(++unw.stat.script.runs; start = ia64_get_itc());
......@@ -1677,8 +1676,7 @@ run_script (struct unw_script *script, struct unw_frame_info *state)
case UNW_INSN_MOVE_SCRATCH:
if (state->pt) {
pt = get_scratch_regs(state);
s[dst] = pt + val;
s[dst] = (unsigned long) get_scratch_regs(state) + val;
} else {
s[dst] = 0;
UNW_DPRINT(0, "unwind.%s: no state->pt, dst=%ld, val=%ld\n",
......
......@@ -91,6 +91,8 @@ ide_init_default_hwifs (void)
#endif
}
#include <asm-generic/ide_iops.h>
#endif /* __KERNEL__ */
#endif /* __ASM_IA64_IDE_H */
......@@ -6,8 +6,8 @@
* be a little careful about namespace pollution etc. Also, we cannot
* assume GCC is being used.
*
* Copyright (C) 1998-2000 Hewlett-Packard Co
* Copyright (C) 1998-2000 David Mosberger-Tang <davidm@hpl.hp.com>
* Copyright (C) 1998-2000, 2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
*/
typedef unsigned int __kernel_dev_t;
......@@ -26,6 +26,8 @@ typedef long __kernel_ptrdiff_t;
typedef long __kernel_time_t;
typedef long __kernel_suseconds_t;
typedef long __kernel_clock_t;
typedef int __kernel_timer_t;
typedef int __kernel_clockid_t;
typedef int __kernel_daddr_t;
typedef char * __kernel_caddr_t;
typedef unsigned long __kernel_sigset_t; /* at least 32 bits */
......
......@@ -33,8 +33,11 @@ typedef struct siginfo {
/* POSIX.1b timers */
struct {
unsigned int _timer1;
unsigned int _timer2;
timer_t _tid; /* timer id */
int _overrun; /* overrun count */
char _pad[sizeof(__ARCH_SI_UID_T) - sizeof(int)];
sigval_t _sigval; /* must overlay ._rt._sigval! */
int _sys_private; /* not to be passed to user */
} _timer;
/* POSIX.1b signals */
......
/*
* Copyright (C) 2002 Hewlett-Packard Co
* Copyright (C) 2002-2003 Hewlett-Packard Co
* David Mosberger-Tang <davidm@hpl.hp.com>
*/
#ifndef _ASM_IA64_THREAD_INFO_H
......@@ -51,6 +51,7 @@ struct thread_info {
/* how to get the thread information struct from C */
#define current_thread_info() ((struct thread_info *) ((char *) current + IA64_TASK_SIZE))
#define free_thread_info(ti) /* nothing */
#endif /* !__ASSEMBLY */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment