The patch titled Subject: smp: add func to IPI cpus based on parameter func has been added to the -mm tree. Its filename is smp-add-func-to-ipi-cpus-based-on-parameter-func-v9.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Gilad Ben-Yossef <gilad@xxxxxxxxxxxxx> Subject: smp: add func to IPI cpus based on parameter func Add the on_each_cpu_cond() function that wraps on_each_cpu_mask() and calculates the cpumask of cpus to IPI by calling a function supplied as a parameter in order to determine whether to IPI each specific cpu. The function works around allocation failure of cpumask variable in CONFIG_CPUMASK_OFFSTACK=y by itereating over cpus sending an IPI a time via smp_call_function_single(). The function is useful since it allows to seperate the specific code that decided in each case whether to IPI a specific cpu for a specific request from the common boilerplate code of handling creating the mask, handling failures etc. Signed-off-by: Gilad Ben-Yossef <gilad@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Acked-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx> Reviewed-by: Srivatsa S. Bhat <srivatsa.bhat@xxxxxxxxxxxxxxxxxx> Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx> Cc: Christoph Lameter <cl@xxxxxxxxxxxxxxxxxxxx> Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx> Cc: Russell King <linux@xxxxxxxxxxxxxxxx> Cc: linux-mm@xxxxxxxxx Cc: Pekka Enberg <penberg@xxxxxxxxxx> Cc: Matt Mackall <mpm@xxxxxxxxxxx> Cc: Sasha Levin <levinsasha928@xxxxxxxxx> Cc: Rik van Riel <riel@xxxxxxxxxx> Cc: Andi Kleen <andi@xxxxxxxxxxxxxx> Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx> Cc: linux-fsdevel@xxxxxxxxxxxxxxx Cc: Avi Kivity <avi@xxxxxxxxxx> Cc: Kosaki Motohiro <kosaki.motohiro@xxxxxxxxx> Cc: Milton Miller <miltonm@xxxxxxx> --- index d0adb78..46e2267 100644 Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- kernel/smp.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff -puN kernel/smp.c~smp-add-func-to-ipi-cpus-based-on-parameter-func-v9 kernel/smp.c --- a/kernel/smp.c~smp-add-func-to-ipi-cpus-based-on-parameter-func-v9 +++ a/kernel/smp.c @@ -771,7 +771,9 @@ EXPORT_SYMBOL(on_each_cpu_mask); * The function might sleep if the GFP flags indicates a non * atomic allocation is allowed. * - * Preemption is disabled to protect against a hotplug event. + * Preemption is disabled to protect against CPU going offline but not + * online. CPUs going online during the call will not be seen or sent + * an IPI. * * You must not call this function with disabled interrupts or * from a hardware interrupt handler or from a bottom half handler. _ Subject: Subject: smp: add func to IPI cpus based on parameter func Patches currently in -mm which might be from gilad@xxxxxxxxxxxxx are smp-introduce-a-generic-on_each_cpu_mask-function.patch arm-move-arm-over-to-generic-on_each_cpu_mask.patch tile-move-tile-to-use-generic-on_each_cpu_mask.patch smp-add-func-to-ipi-cpus-based-on-parameter-func.patch smp-add-func-to-ipi-cpus-based-on-parameter-func-fix.patch smp-add-func-to-ipi-cpus-based-on-parameter-func-update.patch smp-add-func-to-ipi-cpus-based-on-parameter-func-update-fix.patch smp-add-func-to-ipi-cpus-based-on-parameter-func-v9.patch smp-add-func-to-ipi-cpus-based-on-parameter-func-v9-fix.patch slub-only-ipi-cpus-that-have-per-cpu-obj-to-flush.patch fs-only-send-ipi-to-invalidate-lru-bh-when-needed.patch mm-only-ipi-cpus-to-drain-local-pages-if-they-exist.patch mm-only-ipi-cpus-to-drain-local-pages-if-they-exist-update.patch mm-only-ipi-cpus-to-drain-local-pages-if-they-exist-v9.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html