diff options
| author | Anton Blanchard <anton@samba.org> | 2003-02-11 07:56:04 +1100 |
|---|---|---|
| committer | Anton Blanchard <anton@samba.org> | 2003-02-11 07:56:04 +1100 |
| commit | 4da38fc749733fb517a06fea6d3923724177f4bf (patch) | |
| tree | bb614f365c5137666812a0f79b3bb7d0c21d68c7 | |
| parent | 90a252f2c840063a39929a05a88c88a74ba360bf (diff) | |
| parent | 28a59cb02a6b97cb27e914687c0346c608abd110 (diff) | |
Merge samba.org:/scratch/anton/linux-2.5
into samba.org:/scratch/anton/sfr
| -rw-r--r-- | arch/i386/kernel/traps.c | 6 | ||||
| -rw-r--r-- | fs/proc/array.c | 4 | ||||
| -rw-r--r-- | kernel/exit.c | 2 | ||||
| -rw-r--r-- | kernel/sched.c | 2 |
4 files changed, 9 insertions, 5 deletions
diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c index 81a09464e4d7..234ced527110 100644 --- a/arch/i386/kernel/traps.c +++ b/arch/i386/kernel/traps.c @@ -514,6 +514,10 @@ asmlinkage void do_debug(struct pt_regs * regs, long error_code) __asm__ __volatile__("movl %%db6,%0" : "=r" (condition)); + /* It's safe to allow irq's after DR6 has been saved */ + if (regs->eflags & X86_EFLAGS_IF) + local_irq_enable(); + /* Mask out spurious debug traps due to lazy DR7 setting */ if (condition & (DR_TRAP0|DR_TRAP1|DR_TRAP2|DR_TRAP3)) { if (!tsk->thread.debugreg[7]) @@ -831,7 +835,7 @@ void __init trap_init(void) #endif set_trap_gate(0,÷_error); - set_trap_gate(1,&debug); + set_intr_gate(1,&debug); set_intr_gate(2,&nmi); set_system_gate(3,&int3); /* int3-5 can be called from all */ set_system_gate(4,&overflow); diff --git a/fs/proc/array.c b/fs/proc/array.c index df1501a0f332..5fe9bffbc8af 100644 --- a/fs/proc/array.c +++ b/fs/proc/array.c @@ -126,8 +126,8 @@ static const char *task_state_array[] = { "R (running)", /* 0 */ "S (sleeping)", /* 1 */ "D (disk sleep)", /* 2 */ - "T (stopped)", /* 8 */ - "Z (zombie)", /* 4 */ + "T (stopped)", /* 4 */ + "Z (zombie)", /* 8 */ "X (dead)" /* 16 */ }; diff --git a/kernel/exit.c b/kernel/exit.c index fbc00cfae030..98188558e3cf 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -781,7 +781,7 @@ do_group_exit(int exit_code) * wait4()-ing process will get the correct exit code - even if this * thread is not the thread group leader. */ -asmlinkage long sys_exit_group(int error_code) +asmlinkage void sys_exit_group(int error_code) { do_group_exit((error_code & 0xff) << 8); } diff --git a/kernel/sched.c b/kernel/sched.c index 3e072580a244..68bd00e54a81 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -2037,7 +2037,7 @@ static void show_task(task_t * p) unsigned long free = 0; task_t *relative; int state; - static const char * stat_nam[] = { "R", "S", "D", "Z", "T", "W" }; + static const char * stat_nam[] = { "R", "S", "D", "T", "Z", "W" }; printk("%-13.13s ", p->comm); state = p->state ? __ffs(p->state) + 1 : 0; |
