on_each_cpu() returns as its own return value the return value of smp_call_function(). smp_call_function() in turn returns a hard coded value of zero. Some callers to on_each_cpu() waste cycles and bloat code space by checking the return value to on_each_cpu(), probably for historical reasons. This patch set refactors callers to not test on_each_cpu() (fixed) return value and then refactors on_each_cpu to return void to avoid confusing future users. In other words, this patch aims to delete 18 source code lines while not changing any functionality :-) I tested as best as I could the x86 changes and compiled some of the others, but I don't have access to all the needed hardware for testing. Reviewers and testers welcome! The only change from the first version is the addition of a proper Signed-off-by line. This patch set is also available on branch on_each_cpu_ret_v2 at git://github.com/gby/linux.git Signed-off-by: Gilad Ben-Yossef <gilad@xxxxxxxxxxxxx> Acked-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> Reviewed-by: Michal Nazarewicz <mina86@xxxxxxxxxx> CC: Michal Nazarewicz <mina86@xxxxxxxxxx> CC: David Airlie <airlied@xxxxxxxx> CC: dri-devel@xxxxxxxxxxxxxxxxxxxxx CC: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> CC: Paul Mackerras <paulus@xxxxxxxxx> CC: Grant Likely <grant.likely@xxxxxxxxxxxx> CC: Rob Herring <rob.herring@xxxxxxxxxxx> CC: linuxppc-dev@xxxxxxxxxxxxxxxx CC: devicetree-discuss@xxxxxxxxxxxxxxxx CC: Richard Henderson <rth@xxxxxxxxxxx> CC: Ivan Kokshaysky <ink@xxxxxxxxxxxxxxxxxxxx> CC: Matt Turner <mattst88@xxxxxxxxx> CC: linux-alpha@xxxxxxxxxxxxxxx CC: Thomas Gleixner <tglx@xxxxxxxxxxxxx> CC: Ingo Molnar <mingo@xxxxxxxxxx> CC: "H. Peter Anvin" <hpa@xxxxxxxxx> CC: x86@xxxxxxxxxx CC: Tony Luck <tony.luck@xxxxxxxxx> CC: Fenghua Yu <fenghua.yu@xxxxxxxxx> CC: linux-ia64@xxxxxxxxxxxxxxx CC: Will Deacon <will.deacon@xxxxxxx> CC: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx> CC: Arnaldo Carvalho de Melo <acme@xxxxxxxxxxxxxxxxxx> CC: Russell King <linux@xxxxxxxxxxxxxxxx> CC: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Gilad Ben-Yossef (9): arm: avoid using on_each_cpu hard coded ret value ia64: avoid using on_each_cpu hard coded ret value x86: avoid using on_each_cpu hard coded ret value alpha: avoid using on_each_cpu hard coded ret value ppc: avoid using on_each_cpu hard coded ret value agp: avoid using on_each_cpu hard coded ret value drm: avoid using on_each_cpu hard coded ret value smp: refactor on_each_cpu to void returning func x86: refactor wbinvd_on_all_cpus to void function arch/alpha/kernel/smp.c | 7 ++----- arch/arm/kernel/perf_event.c | 2 +- arch/ia64/kernel/perfmon.c | 12 ++---------- arch/powerpc/kernel/rtas.c | 3 +-- arch/x86/include/asm/smp.h | 5 ++--- arch/x86/lib/cache-smp.c | 4 ++-- drivers/char/agp/generic.c | 3 +-- drivers/gpu/drm/drm_cache.c | 3 +-- include/linux/smp.h | 7 +++---- kernel/smp.c | 6 ++---- 10 files changed, 17 insertions(+), 35 deletions(-) _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel