aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/process.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-10-25 11:36:50 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-10-25 11:36:50 -0400
commitc4a6eb3b7d5b483de331313e7ea38a6891a3447a (patch)
treede415b67626308b1fa414e47f17959939c017c92 /arch/s390/kernel/process.c
parent33081adf8b89d5a716d7e1c60171768d39795b39 (diff)
parent96f4a70d8eb4d746b19d5b5510407c8ff0d00340 (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: (48 commits) [S390] topology: export cpu topology via proc/sysinfo [S390] topology: move topology sysinfo code [S390] topology: clean up facility detection [S390] cleanup facility list handling [S390] enable ARCH_DMA_ADDR_T_64BIT with 64BIT [S390] dasd: ignore unsolicited interrupts for DIAG [S390] kvm: Enable z196 instruction facilities [S390] dasd: fix unsolicited interrupt recognition [S390] dasd: fix use after free in dbf [S390] kvm: Fix badness at include/asm/mmu_context.h:83 [S390] cio: fix I/O cancel function [S390] topology: change default [S390] smp: use correct cpu address in print_cpu_info() [S390] remove ieee_instruction_pointer from thread_struct [S390] cleanup system call parameter setup [S390] correct alignment of cpuid structure [S390] cleanup lowcore access from external interrupts [S390] cleanup lowcore access from program checks [S390] pgtable: move pte_mkhuge() from hugetlb.h to pgtable.h [S390] fix SIGBUS handling ...
Diffstat (limited to 'arch/s390/kernel/process.c')
-rw-r--r--arch/s390/kernel/process.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/s390/kernel/process.c b/arch/s390/kernel/process.c
index d3a2d1c6438e..ec2e03b22ead 100644
--- a/arch/s390/kernel/process.c
+++ b/arch/s390/kernel/process.c
@@ -76,17 +76,17 @@ unsigned long thread_saved_pc(struct task_struct *tsk)
76static void default_idle(void) 76static void default_idle(void)
77{ 77{
78 /* CPU is going idle. */ 78 /* CPU is going idle. */
79 local_irq_disable();
80 if (need_resched()) {
81 local_irq_enable();
82 return;
83 }
84#ifdef CONFIG_HOTPLUG_CPU 79#ifdef CONFIG_HOTPLUG_CPU
85 if (cpu_is_offline(smp_processor_id())) { 80 if (cpu_is_offline(smp_processor_id())) {
86 preempt_enable_no_resched(); 81 preempt_enable_no_resched();
87 cpu_die(); 82 cpu_die();
88 } 83 }
89#endif 84#endif
85 local_irq_disable();
86 if (need_resched()) {
87 local_irq_enable();
88 return;
89 }
90 local_mcck_disable(); 90 local_mcck_disable();
91 if (test_thread_flag(TIF_MCCK_PENDING)) { 91 if (test_thread_flag(TIF_MCCK_PENDING)) {
92 local_mcck_enable(); 92 local_mcck_enable();