All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
To: linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>,
	Martin Schwidefsky <schwidefsky@de.ibm.com>
Subject: [patch 02/10] idle: Fix machine check handling in idle loop.
Date: Wed, 05 Mar 2008 12:54:34 +0100	[thread overview]
Message-ID: <20080305115713.374958723@de.ibm.com> (raw)
In-Reply-To: 20080305115432.691030908@de.ibm.com

[-- Attachment #1: 002-idle-mcck.diff --]
[-- Type: text/plain, Size: 1640 bytes --]

From: Heiko Carstens <heiko.carstens@de.ibm.com>

If a machine check handling is pending when the idle loop is entered
default_idle will be left with timer ticks and virtual timer disabled.
Fix this by "calling" the idle_chain. Also a BUG_ON(!in_interrupt) in
start_hz_timer must be removed since the function now gets called from
non interrupt context as well.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---

 arch/s390/kernel/process.c |    4 ++++
 arch/s390/kernel/time.c    |    2 --
 2 files changed, 4 insertions(+), 2 deletions(-)

Index: quilt-2.6/arch/s390/kernel/process.c
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/process.c
+++ quilt-2.6/arch/s390/kernel/process.c
@@ -152,6 +152,10 @@ static void default_idle(void)
 	local_mcck_disable();
 	if (test_thread_flag(TIF_MCCK_PENDING)) {
 		local_mcck_enable();
+		/* disable monitor call class 0 */
+		__ctl_clear_bit(8, 15);
+		atomic_notifier_call_chain(&idle_chain, S390_CPU_NOT_IDLE,
+					   hcpu);
 		local_irq_enable();
 		s390_handle_mcck();
 		return;
Index: quilt-2.6/arch/s390/kernel/time.c
===================================================================
--- quilt-2.6.orig/arch/s390/kernel/time.c
+++ quilt-2.6/arch/s390/kernel/time.c
@@ -209,8 +209,6 @@ static void stop_hz_timer(void)
  */
 static void start_hz_timer(void)
 {
-	BUG_ON(!in_interrupt());
-
 	if (!cpu_isset(smp_processor_id(), nohz_cpu_mask))
 		return;
 	account_ticks(get_clock());

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

  parent reply	other threads:[~2008-03-05 11:54 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-05 11:54 [patch 00/10] s390 bux fixes for 2.6.25-rc4 Martin Schwidefsky
2008-03-05 11:54 ` [patch 01/10] Update default configuration Martin Schwidefsky
2008-03-05 11:54 ` Martin Schwidefsky [this message]
2008-03-05 11:54 ` [patch 03/10] Get rid of memcpy gcc warning workaround Martin Schwidefsky
2008-03-05 11:54 ` [patch 04/10] dasd: let dasd erp matching recognize alias recovery Martin Schwidefsky
2008-03-05 11:54 ` [patch 05/10] dasd: fix reference counting in display method for proc/dasd/devices Martin Schwidefsky
2008-03-05 11:54 ` [patch 06/10] sclp_vt220: speed up console output for interactive work Martin Schwidefsky
2008-03-05 11:54 ` [patch 07/10] zcrypt: fix ap_device_list handling Martin Schwidefsky
2008-03-05 11:54 ` [patch 08/10] Fix IPL from NSS Martin Schwidefsky
2008-03-05 11:54 ` [patch 09/10] Load disabled wait psw if reipl fails Martin Schwidefsky
2008-03-05 11:54 ` [patch 10/10] incorrect reipl nss name Martin Schwidefsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080305115713.374958723@de.ibm.com \
    --to=schwidefsky@de.ibm.com \
    --cc=heiko.carstens@de.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.