diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2006-10-11 09:31:26 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2006-10-11 09:31:26 -0400 |
commit | 9d0a57cbdb4976f382eb1c03baee338e467b6592 (patch) | |
tree | d224342e631bddc9ccd8b6e2aa89989a9c380182 /arch/s390/kernel/vtime.c | |
parent | 53a5fbdc2dff55161a206ed1a1385a8fa8055c34 (diff) |
[S390] irq change improvements.
Remove the last few places where a pointer to pt_regs gets passed.
Also make sure we call set_irq_regs() before irq_enter() and after
irq_exit(). This doesn't fix anything but makes sure s390 looks the
same like all other architectures.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/vtime.c')
-rw-r--r-- | arch/s390/kernel/vtime.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c index 1d7d3938b2b1..21baaf5496d6 100644 --- a/arch/s390/kernel/vtime.c +++ b/arch/s390/kernel/vtime.c | |||
@@ -209,11 +209,11 @@ static void list_add_sorted(struct vtimer_list *timer, struct list_head *head) | |||
209 | * Do the callback functions of expired vtimer events. | 209 | * Do the callback functions of expired vtimer events. |
210 | * Called from within the interrupt handler. | 210 | * Called from within the interrupt handler. |
211 | */ | 211 | */ |
212 | static void do_callbacks(struct list_head *cb_list, struct pt_regs *regs) | 212 | static void do_callbacks(struct list_head *cb_list) |
213 | { | 213 | { |
214 | struct vtimer_queue *vt_list; | 214 | struct vtimer_queue *vt_list; |
215 | struct vtimer_list *event, *tmp; | 215 | struct vtimer_list *event, *tmp; |
216 | void (*fn)(unsigned long, struct pt_regs*); | 216 | void (*fn)(unsigned long); |
217 | unsigned long data; | 217 | unsigned long data; |
218 | 218 | ||
219 | if (list_empty(cb_list)) | 219 | if (list_empty(cb_list)) |
@@ -224,7 +224,7 @@ static void do_callbacks(struct list_head *cb_list, struct pt_regs *regs) | |||
224 | list_for_each_entry_safe(event, tmp, cb_list, entry) { | 224 | list_for_each_entry_safe(event, tmp, cb_list, entry) { |
225 | fn = event->function; | 225 | fn = event->function; |
226 | data = event->data; | 226 | data = event->data; |
227 | fn(data, regs); | 227 | fn(data); |
228 | 228 | ||
229 | if (!event->interval) | 229 | if (!event->interval) |
230 | /* delete one shot timer */ | 230 | /* delete one shot timer */ |
@@ -275,7 +275,7 @@ static void do_cpu_timer_interrupt(__u16 error_code) | |||
275 | list_move_tail(&event->entry, &cb_list); | 275 | list_move_tail(&event->entry, &cb_list); |
276 | } | 276 | } |
277 | spin_unlock(&vt_list->lock); | 277 | spin_unlock(&vt_list->lock); |
278 | do_callbacks(&cb_list, get_irq_regs()); | 278 | do_callbacks(&cb_list); |
279 | 279 | ||
280 | /* next event is first in list */ | 280 | /* next event is first in list */ |
281 | spin_lock(&vt_list->lock); | 281 | spin_lock(&vt_list->lock); |