LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Jens Axboe <jens.axboe@oracle.com>
To: linux-kernel@vger.kernel.org
Cc: Alan.Brunelle@hp.com, arjan@linux.intel.com, dgc@sgi.com,
npiggin@suse.de, Jens Axboe <jens.axboe@oracle.com>
Subject: [PATCH 6/8] ia64: add support for remotely triggering the block softirq
Date: Thu, 7 Feb 2008 10:19:03 +0100 [thread overview]
Message-ID: <1202375945-29525-7-git-send-email-jens.axboe@oracle.com> (raw)
In-Reply-To: <1202375945-29525-1-git-send-email-jens.axboe@oracle.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
---
arch/ia64/kernel/smp.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/arch/ia64/kernel/smp.c b/arch/ia64/kernel/smp.c
index 4e446aa..96f8ffa 100644
--- a/arch/ia64/kernel/smp.c
+++ b/arch/ia64/kernel/smp.c
@@ -80,6 +80,7 @@ static volatile struct call_data_struct *call_data;
#define IPI_CALL_FUNC 0
#define IPI_CPU_STOP 1
#define IPI_KDUMP_CPU_STOP 3
+#define IPI_BLOCK_SOFTIRQ 4
/* This needs to be cacheline aligned because it is written to by *other* CPUs. */
static DEFINE_PER_CPU_SHARED_ALIGNED(u64, ipi_operation);
@@ -174,6 +175,14 @@ handle_IPI (int irq, void *dev_id)
unw_init_running(kdump_cpu_freeze, NULL);
break;
#endif
+ case IPI_BLOCK_SOFTIRQ: {
+ unsigned long flags;
+
+ local_irq_save(flags);
+ raise_softirq_irqoff(BLOCK_SOFTIRQ);
+ local_irq_restore(flags);
+ break;
+ }
default:
printk(KERN_CRIT "Unknown IPI on CPU %d: %lu\n", this_cpu, which);
break;
@@ -461,6 +470,11 @@ smp_call_function (void (*func) (void *info), void *info, int nonatomic, int wai
}
EXPORT_SYMBOL(smp_call_function);
+void arch_raise_softirq_on_cpu(int cpuid)
+{
+ send_IPI_single(cpuid, IPI_BLOCK_SOFTIRQ);
+}
+
/*
* this function calls the 'stop' function on all other CPUs in the system.
*/
--
1.5.4.22.g7a20
next prev parent reply other threads:[~2008-02-07 9:22 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-07 9:18 [PATCH 0/8] IO queuing and complete affinity Jens Axboe
2008-02-07 9:18 ` [PATCH 1/8] block: split softirq handling into blk-softirq.c Jens Axboe
2008-02-07 9:18 ` [PATCH 2/8] Add interface for queuing work on a specific CPU Jens Axboe
2008-02-07 9:45 ` Andrew Morton
2008-02-07 9:49 ` Jens Axboe
2008-02-07 17:44 ` Harvey Harrison
2008-02-11 10:51 ` Oleg Nesterov
2008-02-07 9:19 ` [PATCH 3/8] block: make kblockd_schedule_work() take the queue as parameter Jens Axboe
2008-02-07 9:19 ` [PATCH 4/8] x86: add support for remotely triggering the block softirq Jens Axboe
2008-02-07 10:07 ` Ingo Molnar
2008-02-07 10:17 ` Jens Axboe
2008-02-07 10:25 ` Ingo Molnar
2008-02-07 10:31 ` Jens Axboe
2008-02-07 10:38 ` Ingo Molnar
2008-02-07 14:18 ` Jens Axboe
2008-02-07 10:49 ` [patch] block layer: kmemcheck fixes Ingo Molnar
2008-02-07 17:42 ` Linus Torvalds
2008-02-07 17:55 ` Jens Axboe
2008-02-07 19:31 ` Ingo Molnar
2008-02-07 20:06 ` Jens Axboe
2008-02-08 1:22 ` David Miller
2008-02-08 1:28 ` Linus Torvalds
2008-02-08 15:09 ` Arjan van de Ven
2008-02-08 22:44 ` Nick Piggin
2008-02-08 22:56 ` Arjan van de Ven
2008-02-08 23:58 ` Nick Piggin
2008-02-08 11:38 ` Jens Axboe
2008-02-07 9:19 ` [PATCH 5/8] x86-64: add support for remotely triggering the block softirq Jens Axboe
2008-02-07 9:19 ` Jens Axboe [this message]
2008-02-07 9:19 ` [PATCH 7/8] kernel: add generic softirq interface for triggering a remote softirq Jens Axboe
2008-02-07 9:19 ` [PATCH 8/8] block: add test code for testing CPU affinity Jens Axboe
2008-02-07 15:16 ` [PATCH 0/8] IO queuing and complete affinity Alan D. Brunelle
2008-02-07 18:25 ` IO queuing and complete affinity with threads (was Re: [PATCH 0/8] IO queuing and complete affinity) Jens Axboe
2008-02-07 20:40 ` Alan D. Brunelle
2008-02-08 7:38 ` Nick Piggin
2008-02-08 7:47 ` Jens Axboe
2008-02-08 7:53 ` Nick Piggin
2008-02-08 7:59 ` Jens Axboe
2008-02-08 8:12 ` Nick Piggin
2008-02-08 8:24 ` Jens Axboe
2008-02-08 8:33 ` Nick Piggin
2008-02-11 5:22 ` David Chinner
2008-02-12 8:28 ` Jeremy Higdon
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=1202375945-29525-7-git-send-email-jens.axboe@oracle.com \
--to=jens.axboe@oracle.com \
--cc=Alan.Brunelle@hp.com \
--cc=arjan@linux.intel.com \
--cc=dgc@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=npiggin@suse.de \
--subject='Re: [PATCH 6/8] ia64: add support for remotely triggering the block softirq' \
/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
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).