From: Peter Zijlstra <peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
To: Jens Axboe <jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
Cc: linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
npiggin-l3A5Bk7waGM@public.gmane.org,
torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org
Subject: Re: [PATCH 0/11] Generic smp_call_function() and friends
Date: Tue, 22 Apr 2008 10:48:53 +0200 [thread overview]
Message-ID: <1208854133.7115.214.camel@twins> (raw)
In-Reply-To: <1208851058-8500-1-git-send-email-jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
On Tue, 2008-04-22 at 09:57 +0200, Jens Axboe wrote:
> Hi,
>
> While working on the more scalable and faster
> smp_call_function_single(), the amount of arch duplicated code in there
> botherered me. So I started adding a generic kernel/smp.c helper that
> the archs could use instead.
>
> Arch code exports two helper functions:
>
> arch_send_call_function_single_ipi(cpu)
> Send call function single ipi to given cpu
> arch_send_call_function_ipi(cpumask)
> Send call function ipi to cpus in cpumask
>
> and then use the generic ipi interrupt helpers to execute the code. I
> converted most of the archs capable of SMP, I think only sparc and
> sparc64 are still missing. Archs set CONFIG_GENERIC_SMP_HELPERS if they
> wish to use the generic helpers for this.
>
> The end result is that we have unified code for handling ipi for
> function calls. Even with adding special handling for the single cpu
> function call, the diffstat is pretty nice (see below.
Real nice work Jens!
WARNING: multiple messages have this Message-ID (diff)
From: Peter Zijlstra <peterz@infradead.org>
To: Jens Axboe <jens.axboe@oracle.com>
Cc: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org,
npiggin@suse.de, torvalds@linux-foundation.org
Subject: Re: [PATCH 0/11] Generic smp_call_function() and friends
Date: Tue, 22 Apr 2008 10:48:53 +0200 [thread overview]
Message-ID: <1208854133.7115.214.camel@twins> (raw)
Message-ID: <20080422084853.YiIezNh9CIy299JzNFYjIo_5ynbeSKhY6fdo96TphUg@z> (raw)
In-Reply-To: <1208851058-8500-1-git-send-email-jens.axboe@oracle.com>
On Tue, 2008-04-22 at 09:57 +0200, Jens Axboe wrote:
> Hi,
>
> While working on the more scalable and faster
> smp_call_function_single(), the amount of arch duplicated code in there
> botherered me. So I started adding a generic kernel/smp.c helper that
> the archs could use instead.
>
> Arch code exports two helper functions:
>
> arch_send_call_function_single_ipi(cpu)
> Send call function single ipi to given cpu
> arch_send_call_function_ipi(cpumask)
> Send call function ipi to cpus in cpumask
>
> and then use the generic ipi interrupt helpers to execute the code. I
> converted most of the archs capable of SMP, I think only sparc and
> sparc64 are still missing. Archs set CONFIG_GENERIC_SMP_HELPERS if they
> wish to use the generic helpers for this.
>
> The end result is that we have unified code for handling ipi for
> function calls. Even with adding special handling for the single cpu
> function call, the diffstat is pretty nice (see below.
Real nice work Jens!
next prev parent reply other threads:[~2008-04-22 8:48 UTC|newest]
Thread overview: 128+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-22 7:57 [PATCH 0/11] Generic smp_call_function() and friends Jens Axboe
2008-04-22 7:57 ` Jens Axboe
[not found] ` <1208851058-8500-1-git-send-email-jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-04-22 7:57 ` [PATCH 1/11] Add generic helpers for arch IPI function calls Jens Axboe
2008-04-22 7:57 ` Jens Axboe
[not found] ` <1208851058-8500-2-git-send-email-jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-04-22 9:16 ` Avi Kivity
2008-04-22 9:16 ` Avi Kivity
[not found] ` <480DACDD.7040108-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2008-04-22 9:22 ` Jens Axboe
2008-04-22 9:22 ` Jens Axboe
[not found] ` <20080422092230.GW12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 11:14 ` Jens Axboe
2008-04-22 11:14 ` Jens Axboe
2008-04-22 13:00 ` Peter Zijlstra
2008-04-22 14:25 ` Jens Axboe
2008-04-22 14:25 ` Jens Axboe
[not found] ` <20080422142543.GG12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 14:38 ` Avi Kivity
2008-04-22 14:38 ` Avi Kivity
[not found] ` <480DF861.6000705-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2008-04-22 14:43 ` Peter Zijlstra
2008-04-22 14:43 ` Peter Zijlstra
2008-04-22 14:47 ` Avi Kivity
2008-04-22 14:47 ` Avi Kivity
2008-04-22 14:53 ` Jens Axboe
2008-04-22 14:43 ` Linus Torvalds
2008-04-22 14:43 ` Linus Torvalds
[not found] ` <alpine.LFD.1.10.0804220735350.2779-5CScLwifNT1QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>
2008-04-22 14:51 ` Jens Axboe
2008-04-22 14:51 ` Jens Axboe
2008-04-22 15:01 ` Linus Torvalds
2008-04-22 16:49 ` Jens Axboe
2008-04-22 16:49 ` Jens Axboe
[not found] ` <20080422164947.GN12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 17:04 ` Jens Axboe
2008-04-22 17:04 ` Jens Axboe
[not found] ` <20080422170405.GO12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 17:13 ` Jens Axboe
2008-04-22 17:13 ` Jens Axboe
[not found] ` <20080422171324.GP12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 17:29 ` Linus Torvalds
2008-04-22 17:29 ` Linus Torvalds
[not found] ` <alpine.LFD.1.10.0804221027210.2779-5CScLwifNT1QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>
2008-04-22 18:23 ` Jens Axboe
2008-04-22 18:23 ` Jens Axboe
2008-04-22 18:23 ` Jens Axboe
[not found] ` <20080422182337.GQ12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 18:39 ` Linus Torvalds
2008-04-22 18:39 ` Linus Torvalds
2008-04-22 14:58 ` Linus Torvalds
2008-04-22 14:58 ` Linus Torvalds
[not found] ` <alpine.LFD.1.10.0804220749450.2779-5CScLwifNT1QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>
2008-04-22 15:07 ` Jens Axboe
2008-04-22 15:07 ` Jens Axboe
2008-04-22 23:12 ` Mark Lord
2008-04-22 23:12 ` Mark Lord
[not found] ` <480E70ED.3030701-gsilrlXbHYg@public.gmane.org>
2008-04-23 7:24 ` Jens Axboe
2008-04-23 7:24 ` Jens Axboe
[not found] ` <20080423072432.GX12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-23 13:42 ` Mark Lord
2008-04-23 13:42 ` Mark Lord
[not found] ` <480F3CBC.60305-gsilrlXbHYg@public.gmane.org>
2008-04-23 13:51 ` Jens Axboe
2008-04-23 13:51 ` Jens Axboe
2008-04-23 14:46 ` Mark Lord
[not found] ` <480F4BD9.8090003-gsilrlXbHYg@public.gmane.org>
2008-04-24 10:59 ` Jens Axboe
2008-04-24 10:59 ` Jens Axboe
[not found] ` <20080424105908.GW12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-24 12:44 ` Mark Lord
2008-04-24 12:44 ` Mark Lord
[not found] ` <481080A0.9050804-gsilrlXbHYg@public.gmane.org>
2008-04-24 21:30 ` Rafael J. Wysocki
2008-04-24 21:30 ` Rafael J. Wysocki
2008-04-25 11:08 ` Pavel Machek
2008-04-25 11:08 ` Pavel Machek
2008-04-26 8:04 ` Pavel Machek
2008-04-26 8:04 ` Pavel Machek
2008-04-28 15:13 ` Mark Lord
2008-05-01 16:23 ` Pavel Machek
2008-04-22 7:57 ` [PATCH 2/11] x86: convert to generic helpers for " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
[not found] ` <1208851058-8500-3-git-send-email-jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-04-22 8:38 ` Sam Ravnborg
2008-04-22 8:38 ` Sam Ravnborg
[not found] ` <20080422083810.GA23540-QabhHTsIXMSnlFQ6Q1D1Y0B+6BGkLq7r@public.gmane.org>
2008-04-22 8:43 ` Jens Axboe
2008-04-22 8:43 ` Jens Axboe
[not found] ` <20080422084315.GT12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 11:15 ` Jens Axboe
2008-04-22 11:15 ` Jens Axboe
2008-04-22 8:47 ` Ingo Molnar
2008-04-22 8:47 ` Ingo Molnar
[not found] ` <20080422084738.GB2388-X9Un+BFzKDI@public.gmane.org>
2008-04-22 8:48 ` Jacek Luczak
2008-04-22 8:48 ` Jacek Luczak
[not found] ` <480DA670.4060707-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2008-04-22 8:56 ` Jens Axboe
2008-04-22 8:56 ` Jens Axboe
[not found] ` <20080422085629.GV12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 9:04 ` Jacek Luczak
2008-04-22 9:04 ` Jacek Luczak
2008-04-22 8:52 ` Jens Axboe
2008-04-22 8:52 ` Jens Axboe
2008-04-26 8:59 ` Jeremy Fitzhardinge
2008-04-26 8:59 ` Jeremy Fitzhardinge
2008-04-22 7:57 ` [PATCH 3/11] powerpc: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
[not found] ` <1208851058-8500-4-git-send-email-jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-04-22 12:03 ` Paul Mackerras
2008-04-22 12:03 ` Paul Mackerras
[not found] ` <18445.54284.194023.553595-UYQwCShxghk5kJ7NmlRacFaTQe2KTcn/@public.gmane.org>
2008-04-22 12:13 ` Jens Axboe
2008-04-22 12:13 ` Jens Axboe
[not found] ` <20080422121315.GE12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 12:42 ` Paul Mackerras
2008-04-22 12:42 ` Paul Mackerras
[not found] ` <18445.56653.957832.720681-UYQwCShxghk5kJ7NmlRacFaTQe2KTcn/@public.gmane.org>
2008-04-22 18:51 ` Jens Axboe
2008-04-22 18:51 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 4/11] ia64: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 5/11] alpha: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 6/11] arm: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 15:00 ` Catalin Marinas
[not found] ` <1208876447.31997.30.camel-hhZApKj8DF/YkXV2EHHjLW3o5bpOHsLO@public.gmane.org>
2008-04-22 18:43 ` Jens Axboe
2008-04-22 18:43 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 7/11] m32r: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 8/11] mips: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 9/11] parisc: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
[not found] ` <1208851058-8500-10-git-send-email-jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-04-22 14:09 ` Kyle McMartin
2008-04-22 14:09 ` Kyle McMartin
[not found] ` <20080422140914.GD19802-EK4dZfYtfFRW/gs8oUvUg/d9D2ou9A/h@public.gmane.org>
2008-04-22 14:27 ` Jens Axboe
2008-04-22 14:27 ` Jens Axboe
[not found] ` <20080422142738.GH12774-tSWWG44O7X1aa/9Udqfwiw@public.gmane.org>
2008-04-22 14:30 ` Kyle McMartin
2008-04-22 14:30 ` Kyle McMartin
[not found] ` <20080422143016.GE19802-EK4dZfYtfFRW/gs8oUvUg/d9D2ou9A/h@public.gmane.org>
2008-04-22 14:49 ` Jens Axboe
2008-04-22 14:49 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 10/11] sh: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 7:57 ` [PATCH 11/11] s390: " Jens Axboe
2008-04-22 7:57 ` Jens Axboe
[not found] ` <1208851058-8500-12-git-send-email-jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-04-22 8:04 ` Martin Schwidefsky
2008-04-22 8:04 ` Martin Schwidefsky
2008-04-22 8:07 ` Jens Axboe
2008-04-22 8:07 ` Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 7:57 ` Jens Axboe
2008-04-22 8:48 ` Peter Zijlstra [this message]
2008-04-22 8:48 ` [PATCH 0/11] Generic smp_call_function() and friends Peter Zijlstra
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=1208854133.7115.214.camel@twins \
--to=peterz-wegcikhe2lqwvfeawa7xhq@public.gmane.org \
--cc=jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org \
--cc=linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=npiggin-l3A5Bk7waGM@public.gmane.org \
--cc=torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.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.