From: Peter Zijlstra <peterz@infradead.org>
To: Frederic Weisbecker <fweisbec@gmail.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@kernel.org>,
Andrew Morton <akpm@linux-foundation.org>,
Steven Rostedt <rostedt@goodmis.org>,
Paul Gortmaker <paul.gortmaker@windriver.com>
Subject: Re: [RFC PATCH 5/8] irq_work: Make self-IPIs optable
Date: Mon, 22 Oct 2012 12:41:45 +0200 [thread overview]
Message-ID: <1350902505.2768.88.camel@twins> (raw)
In-Reply-To: <1350750167-14263-6-git-send-email-fweisbec@gmail.com>
On Sat, 2012-10-20 at 12:22 -0400, Frederic Weisbecker wrote:
> + if (empty) {
> + /*
> + * If an IPI is requested, raise it right away. Otherwise wait
> + * for the next tick unless it's stopped. Now if the arch uses
> + * some other obscure way than IPI to raise an irq work, just raise
> + * and don't think further.
> + */
> + if (ipi || !arch_irq_work_has_ipi() || tick_nohz_tick_stopped())
> + arch_irq_work_raise();
> + }
> preempt_enable();
> }
Doesn't this have a problem where we enqueue the first lazy and then one
with ipi? In that case it appears we won't send the IPI because the
queue wasn't empty.
next prev parent reply other threads:[~2012-10-22 10:42 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-20 16:22 [RFC PATCH 0/8] printk: Make it usable on nohz CPUs v2 Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 1/8] irq_work: Move irq_work_raise() declaration/default definition to arch headers Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 2/8] irq_work: Let the arch tell us about self-IPI support Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 3/8] x86: Implement arch_irq_work_has_ipi() Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 4/8] nohz: Add API to check tick state Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 5/8] irq_work: Make self-IPIs optable Frederic Weisbecker
2012-10-22 10:41 ` Peter Zijlstra [this message]
2012-10-23 12:34 ` Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 6/8] irq_work: Handle queuing without IPI support in dyntick idle mode Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 7/8] irq_work: Remove CONFIG_HAVE_IRQ_WORK Frederic Weisbecker
2012-10-20 16:22 ` [RFC PATCH 8/8] printk: Wake up klogd using irq_work Frederic Weisbecker
2012-10-20 16:50 ` Joe Perches
2012-10-20 17:21 ` Frederic Weisbecker
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=1350902505.2768.88.camel@twins \
--to=peterz@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=paul.gortmaker@windriver.com \
--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