diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-27 12:27:44 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-27 12:27:44 -0500 |
| commit | 981a2edd1922c00e747680f30734ea50c86af28d (patch) | |
| tree | e32a9896900ea525eeb6019e618f8fa9d233d81e /arch | |
| parent | 4bdadb9785696439c6e2b3efe34aa76df1149c83 (diff) | |
| parent | 21ec7f6dbf10492ce9a21718040677d3e68bd57d (diff) | |
Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
[S390] fix single stepped svcs with TRACE_IRQFLAGS=y
[S390] zcrypt: Do not remove coprocessor for error 8/72
[S390] sclp_vt220: set initial terminal window size
[S390] use set_current_state in sigsuspend
[S390] irqflags: add missing types.h include
[S390] dasd: fix possible NULL pointer errors
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/s390/include/asm/irqflags.h | 9 | ||||
| -rw-r--r-- | arch/s390/kernel/entry.S | 1 | ||||
| -rw-r--r-- | arch/s390/kernel/entry64.S | 1 | ||||
| -rw-r--r-- | arch/s390/kernel/signal.c | 2 |
4 files changed, 6 insertions, 7 deletions
diff --git a/arch/s390/include/asm/irqflags.h b/arch/s390/include/asm/irqflags.h index 3f26131120b7..c2fb432f576a 100644 --- a/arch/s390/include/asm/irqflags.h +++ b/arch/s390/include/asm/irqflags.h | |||
| @@ -1,14 +1,12 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * include/asm-s390/irqflags.h | 2 | * Copyright IBM Corp. 2006,2010 |
| 3 | * | 3 | * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com> |
| 4 | * Copyright (C) IBM Corp. 2006 | ||
| 5 | * Author(s): Heiko Carstens <heiko.carstens@de.ibm.com> | ||
| 6 | */ | 4 | */ |
| 7 | 5 | ||
| 8 | #ifndef __ASM_IRQFLAGS_H | 6 | #ifndef __ASM_IRQFLAGS_H |
| 9 | #define __ASM_IRQFLAGS_H | 7 | #define __ASM_IRQFLAGS_H |
| 10 | 8 | ||
| 11 | #ifdef __KERNEL__ | 9 | #include <linux/types.h> |
| 12 | 10 | ||
| 13 | #if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 2) | 11 | #if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 2) |
| 14 | 12 | ||
| @@ -102,5 +100,4 @@ static inline int raw_irqs_disabled_flags(unsigned long flags) | |||
| 102 | /* For spinlocks etc */ | 100 | /* For spinlocks etc */ |
| 103 | #define raw_local_irq_save(x) ((x) = raw_local_irq_disable()) | 101 | #define raw_local_irq_save(x) ((x) = raw_local_irq_disable()) |
| 104 | 102 | ||
| 105 | #endif /* __KERNEL__ */ | ||
| 106 | #endif /* __ASM_IRQFLAGS_H */ | 103 | #endif /* __ASM_IRQFLAGS_H */ |
diff --git a/arch/s390/kernel/entry.S b/arch/s390/kernel/entry.S index 48215d15762b..e8ef21c51bbe 100644 --- a/arch/s390/kernel/entry.S +++ b/arch/s390/kernel/entry.S | |||
| @@ -571,6 +571,7 @@ pgm_svcper: | |||
| 571 | mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID | 571 | mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID |
| 572 | oi __TI_flags+3(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP | 572 | oi __TI_flags+3(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP |
| 573 | TRACE_IRQS_ON | 573 | TRACE_IRQS_ON |
| 574 | lm %r2,%r6,SP_R2(%r15) # load svc arguments | ||
| 574 | stosm __SF_EMPTY(%r15),0x03 # reenable interrupts | 575 | stosm __SF_EMPTY(%r15),0x03 # reenable interrupts |
| 575 | b BASED(sysc_do_svc) | 576 | b BASED(sysc_do_svc) |
| 576 | 577 | ||
diff --git a/arch/s390/kernel/entry64.S b/arch/s390/kernel/entry64.S index 9aff1d449b6e..f33658f09dd7 100644 --- a/arch/s390/kernel/entry64.S +++ b/arch/s390/kernel/entry64.S | |||
| @@ -549,6 +549,7 @@ pgm_svcper: | |||
| 549 | mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID | 549 | mvc __THREAD_per+__PER_access_id(1,%r8),__LC_PER_ACCESS_ID |
| 550 | oi __TI_flags+7(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP | 550 | oi __TI_flags+7(%r9),_TIF_SINGLE_STEP # set TIF_SINGLE_STEP |
| 551 | TRACE_IRQS_ON | 551 | TRACE_IRQS_ON |
| 552 | lmg %r2,%r6,SP_R2(%r15) # load svc arguments | ||
| 552 | stosm __SF_EMPTY(%r15),0x03 # reenable interrupts | 553 | stosm __SF_EMPTY(%r15),0x03 # reenable interrupts |
| 553 | j sysc_do_svc | 554 | j sysc_do_svc |
| 554 | 555 | ||
diff --git a/arch/s390/kernel/signal.c b/arch/s390/kernel/signal.c index 1675c48b9145..6289945562b0 100644 --- a/arch/s390/kernel/signal.c +++ b/arch/s390/kernel/signal.c | |||
| @@ -64,7 +64,7 @@ SYSCALL_DEFINE3(sigsuspend, int, history0, int, history1, old_sigset_t, mask) | |||
| 64 | recalc_sigpending(); | 64 | recalc_sigpending(); |
| 65 | spin_unlock_irq(¤t->sighand->siglock); | 65 | spin_unlock_irq(¤t->sighand->siglock); |
| 66 | 66 | ||
| 67 | current->state = TASK_INTERRUPTIBLE; | 67 | set_current_state(TASK_INTERRUPTIBLE); |
| 68 | schedule(); | 68 | schedule(); |
| 69 | set_thread_flag(TIF_RESTORE_SIGMASK); | 69 | set_thread_flag(TIF_RESTORE_SIGMASK); |
| 70 | 70 | ||
