diff options
author | Len Brown <len.brown@intel.com> | 2005-08-05 00:49:06 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2005-08-05 00:49:06 -0400 |
commit | c202ac9fbdb64145f034be266d6ee88c98b40aa8 (patch) | |
tree | f654a0a0d3f87cf82c3026670f9dda551dc82b2f | |
parent | 4be44fcd3bf648b782f4460fd06dfae6c42ded4b (diff) | |
parent | c306895167c8384b88bc02945a0d226a04218fa5 (diff) |
Merge ../to-linus
-rw-r--r-- | arch/i386/Kconfig | 3 | ||||
-rw-r--r-- | arch/x86_64/ia32/ptrace32.c | 8 | ||||
-rw-r--r-- | kernel/exit.c | 4 | ||||
-rw-r--r-- | kernel/posix-timers.c | 1 |
4 files changed, 9 insertions, 7 deletions
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig index a801d9d48606..619d843ba231 100644 --- a/arch/i386/Kconfig +++ b/arch/i386/Kconfig | |||
@@ -454,8 +454,9 @@ config HPET_TIMER | |||
454 | Choose N to continue using the legacy 8254 timer. | 454 | Choose N to continue using the legacy 8254 timer. |
455 | 455 | ||
456 | config HPET_EMULATE_RTC | 456 | config HPET_EMULATE_RTC |
457 | bool "Provide RTC interrupt" | 457 | bool |
458 | depends on HPET_TIMER && RTC=y | 458 | depends on HPET_TIMER && RTC=y |
459 | default y | ||
459 | 460 | ||
460 | config SMP | 461 | config SMP |
461 | bool "Symmetric multi-processing support" | 462 | bool "Symmetric multi-processing support" |
diff --git a/arch/x86_64/ia32/ptrace32.c b/arch/x86_64/ia32/ptrace32.c index b98b6d2462f6..2a925e2af390 100644 --- a/arch/x86_64/ia32/ptrace32.c +++ b/arch/x86_64/ia32/ptrace32.c | |||
@@ -43,11 +43,11 @@ static int putreg32(struct task_struct *child, unsigned regno, u32 val) | |||
43 | switch (regno) { | 43 | switch (regno) { |
44 | case offsetof(struct user32, regs.fs): | 44 | case offsetof(struct user32, regs.fs): |
45 | if (val && (val & 3) != 3) return -EIO; | 45 | if (val && (val & 3) != 3) return -EIO; |
46 | child->thread.fs = val & 0xffff; | 46 | child->thread.fsindex = val & 0xffff; |
47 | break; | 47 | break; |
48 | case offsetof(struct user32, regs.gs): | 48 | case offsetof(struct user32, regs.gs): |
49 | if (val && (val & 3) != 3) return -EIO; | 49 | if (val && (val & 3) != 3) return -EIO; |
50 | child->thread.gs = val & 0xffff; | 50 | child->thread.gsindex = val & 0xffff; |
51 | break; | 51 | break; |
52 | case offsetof(struct user32, regs.ds): | 52 | case offsetof(struct user32, regs.ds): |
53 | if (val && (val & 3) != 3) return -EIO; | 53 | if (val && (val & 3) != 3) return -EIO; |
@@ -138,10 +138,10 @@ static int getreg32(struct task_struct *child, unsigned regno, u32 *val) | |||
138 | 138 | ||
139 | switch (regno) { | 139 | switch (regno) { |
140 | case offsetof(struct user32, regs.fs): | 140 | case offsetof(struct user32, regs.fs): |
141 | *val = child->thread.fs; | 141 | *val = child->thread.fsindex; |
142 | break; | 142 | break; |
143 | case offsetof(struct user32, regs.gs): | 143 | case offsetof(struct user32, regs.gs): |
144 | *val = child->thread.gs; | 144 | *val = child->thread.gsindex; |
145 | break; | 145 | break; |
146 | case offsetof(struct user32, regs.ds): | 146 | case offsetof(struct user32, regs.ds): |
147 | *val = child->thread.ds; | 147 | *val = child->thread.ds; |
diff --git a/kernel/exit.c b/kernel/exit.c index 9d1b10ed0135..5b0fb9f09f21 100644 --- a/kernel/exit.c +++ b/kernel/exit.c | |||
@@ -829,8 +829,10 @@ fastcall NORET_TYPE void do_exit(long code) | |||
829 | acct_update_integrals(tsk); | 829 | acct_update_integrals(tsk); |
830 | update_mem_hiwater(tsk); | 830 | update_mem_hiwater(tsk); |
831 | group_dead = atomic_dec_and_test(&tsk->signal->live); | 831 | group_dead = atomic_dec_and_test(&tsk->signal->live); |
832 | if (group_dead) | 832 | if (group_dead) { |
833 | del_timer_sync(&tsk->signal->real_timer); | ||
833 | acct_process(code); | 834 | acct_process(code); |
835 | } | ||
834 | exit_mm(tsk); | 836 | exit_mm(tsk); |
835 | 837 | ||
836 | exit_sem(tsk); | 838 | exit_sem(tsk); |
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c index 10b2ad749d14..38798a2ff994 100644 --- a/kernel/posix-timers.c +++ b/kernel/posix-timers.c | |||
@@ -1166,7 +1166,6 @@ void exit_itimers(struct signal_struct *sig) | |||
1166 | tmr = list_entry(sig->posix_timers.next, struct k_itimer, list); | 1166 | tmr = list_entry(sig->posix_timers.next, struct k_itimer, list); |
1167 | itimer_delete(tmr); | 1167 | itimer_delete(tmr); |
1168 | } | 1168 | } |
1169 | del_timer_sync(&sig->real_timer); | ||
1170 | } | 1169 | } |
1171 | 1170 | ||
1172 | /* | 1171 | /* |