From: Ingo Molnar <mingo@elte.hu>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
david singleton <dsingleton@mvista.com>,
Todd.Kneisel@bull.com, Felix Oxley <lkml@oxley.org>
Subject: Re: 2.6.14-rc3-rt2
Date: Wed, 5 Oct 2005 16:41:27 +0200 [thread overview]
Message-ID: <20051005144127.GA31755@elte.hu> (raw)
In-Reply-To: <Pine.LNX.4.58.0510050928440.23350@localhost.localdomain>
* Steven Rostedt <rostedt@goodmis.org> wrote:
> Hi Ingo,
>
> I just notice that I get the following output:
>
> BUG: gdm:4351 task might have lost a preemption check!
> [<c010433f>] dump_stack+0x1f/0x30 (20)
> [<c011c06f>] preempt_enable_no_resched+0x5f/0x70 (20)
> [<c011b6c9>] sys_sched_yield+0x69/0xb0 (24)
> [<c01033d6>] syscall_call+0x7/0xb (-8116)
> ---------------------------
> | preempt count: 00000000 ]
> | 0-level deep critical section nesting:
> ----------------------------------------
>
> ------------------------------
> | showing all locks held by: | (gdm/4351 [dbb727a0, 118]):
> ------------------------------
>
>
> I looked at this a little and the offending code is here in
> sys_sched_yield:
>
> /*
> * Since we are going to call schedule() anyway, there's
> * no need to preempt or enable interrupts:
> */
> spin_unlock_no_resched(&rq->lock);
>
> __schedule();
>
> So what's the reason for the message? Is it to detect when a
> preemption count goes to zero and isn't rescheduled? At least in this
> part of the kernel it's ok because it is just about to call schedule.
> So is there some way to flag this call to not produce the message?
> Since the message is only outputed once, it seems useless if it only
> gets outputted on a false positive.
the patch below should solve this. I've added the warning to
preempt_enable_no_resched() because we had bugs in this area, and i
wanted to have a chance to review all 'potentially problematic' places.
So i'm changing them to __preempt_enable_no_resched() when they turn out
to be safe. (In the future we'll likely remove the debugging message and
get rid of __preempt_enable_no_resched().)
Ingo
Index: linux/include/linux/spinlock_api_up.h
===================================================================
--- linux.orig/include/linux/spinlock_api_up.h
+++ linux/include/linux/spinlock_api_up.h
@@ -45,7 +45,7 @@
do { preempt_enable(); __release(lock); (void)(lock); } while (0)
#define __UNLOCK_NO_RESCHED(lock) \
- do { preempt_enable_no_resched(); __release(lock); (void)(lock); } while (0)
+ do { __preempt_enable_no_resched(); __release(lock); (void)(lock); } while (0)
#define __UNLOCK_BH(lock) \
do { preempt_enable_no_resched(); local_bh_enable(); __release(lock); (void)(lock); } while (0)
next prev parent reply other threads:[~2005-10-05 14:41 UTC|newest]
Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-04 8:44 2.6.14-rc3-rt2 Ingo Molnar
2005-10-04 12:51 ` 2.6.14-rc3-rt2 K.R. Foley
2005-10-04 13:00 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-04 13:45 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-04 14:27 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-04 15:16 ` 2.6.14-rc3-rt2 Dinakar Guniguntala
2005-10-04 15:32 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-04 15:50 ` 2.6.14-rc3-rt2 Dinakar Guniguntala
2005-10-04 15:46 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-04 16:09 ` 2.6.14-rc3-rt2 Dinakar Guniguntala
2005-10-04 15:34 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-04 16:09 ` 2.6.14-rc3-rt2 Daniel Walker
2005-10-04 16:32 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-04 16:46 ` 2.6.14-rc3-rt2 Daniel Walker
2005-10-04 17:58 ` 2.6.14-rc3-rt2 Dinakar Guniguntala
2005-10-04 17:54 ` 2.6.14-rc3-rt2 Daniel Walker
2005-10-04 18:11 ` 2.6.14-rc3-rt2 Dinakar Guniguntala
2005-10-04 18:27 ` 2.6.14-rc3-rt2 Daniel Walker
2005-10-04 20:03 ` 2.6.14-rc3-rt2 Dinakar Guniguntala
2005-10-05 7:37 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-04 14:25 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-05 7:39 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-04 16:44 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-04 18:11 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-04 18:20 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-04 18:58 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-04 20:45 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-04 20:49 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-04 20:53 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-04 21:21 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-05 10:56 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-05 17:14 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-06 7:54 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-06 8:06 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-06 8:10 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-06 8:29 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-06 8:33 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-06 8:44 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-06 16:04 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-06 8:37 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-06 8:37 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-06 8:49 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-06 9:48 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-06 10:04 ` 2.6.14-rc3-rt2 Andi Kleen
2005-10-06 11:08 ` [PATCH] cleanup u32 flags in acpi spin_lock calls Steven Rostedt
2005-10-06 16:25 ` 2.6.14-rc3-rt2 Luck, Tony
2005-10-06 15:26 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-07 11:08 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-07 11:15 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-07 12:38 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-07 13:26 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-11 8:01 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-11 9:09 ` 2.6.14-rc3-rt12 Steven Rostedt
2005-10-11 9:12 ` 2.6.14-rc3-rt12 Ingo Molnar
2005-10-06 9:48 ` 2.6.14-rc3-rt2 Andi Kleen
2005-10-06 9:36 ` 2.6.14-rc3-rt2 Andi Kleen
2005-10-04 20:51 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-05 7:12 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-05 14:50 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-05 7:41 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-04 20:38 ` 2.6.14-rc3-rt2 Mark Knecht
2005-10-06 14:31 ` 2.6.14-rc3-rt2 Lee Revell
2005-10-06 15:00 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-05 13:36 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-05 14:29 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-05 15:41 ` 2.6.14-rc3-rt2 Daniel Walker
2005-10-05 15:48 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-05 15:58 ` 2.6.14-rc3-rt2 david singleton
2005-10-05 16:08 ` 2.6.14-rc3-rt2 Thomas Gleixner
2005-10-05 16:13 ` 2.6.14-rc3-rt2 david singleton
2005-10-05 15:58 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-05 16:07 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-07 11:05 ` 2.6.14-rc3-rt2 Steven Rostedt
2005-10-07 11:14 ` 2.6.14-rc3-rt2 Ingo Molnar
2005-10-05 14:41 ` Ingo Molnar [this message]
2005-10-05 20:24 ` 2.6.14-rc3-rt2 Esben Nielsen
2005-10-06 16:47 ` 2.6.14-rc3-rt2 Todd Kneisel
2005-10-06 17:18 ` 2.6.14-rc3-rt2 david singleton
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=20051005144127.GA31755@elte.hu \
--to=mingo@elte.hu \
--cc=Todd.Kneisel@bull.com \
--cc=dsingleton@mvista.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lkml@oxley.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox