Messages in this thread | | | Date | Fri, 24 Feb 2012 16:33:48 +0100 | Subject | Re: [PATCH] percpu: fix generic definition of __this_cpu_add_and_return() | From | Torsten Kaiser <> |
| |
On Sun, Feb 19, 2012 at 3:29 PM, Konstantin Khlebnikov <khlebnikov@openvz.org> wrote: > This patch adds missed "__" into function prefix. > Otherwise on all archectures (except x86) it expands to irq/preemtion-safe > variant: _this_cpu_generic_add_return(), which do extra irq-save/irq-restore. > Optimal generic implementation is __this_cpu_generic_add_return(). > > Signed-off-by: Konstantin Khlebnikov <khlebnikov@openvz.org> > --- > include/linux/percpu.h | 3 ++- > 1 files changed, 2 insertions(+), 1 deletions(-) > > diff --git a/include/linux/percpu.h b/include/linux/percpu.h > index 32cd1f6..3b609eb 100644 > --- a/include/linux/percpu.h > +++ b/include/linux/percpu.h > @@ -718,7 +718,8 @@ do { \ > # ifndef __this_cpu_add_return_8 > # define __this_cpu_add_return_8(pcp, val) __this_cpu_generic_add_return(pcp, val) > # endif > -# define __this_cpu_add_return(pcp, val) __pcpu_size_call_return2(this_cpu_add_return_, pcp, val) > +# define __this_cpu_add_return(pcp, val) \ > + __pcpu_size_call_return2(__this_cpu_add_return_, pcp, val) > #endif > > #define __this_cpu_sub_return(pcp, val) this_cpu_add_return(pcp, -(val))
I think, the same fix should be applied to the lines following this patch: #define __this_cpu_sub_return(pcp, val) this_cpu_add_return(pcp, -(val)) #define __this_cpu_inc_return(pcp) this_cpu_add_return(pcp, 1) #define __this_cpu_dec_return(pcp) this_cpu_add_return(pcp, -1)
Shouldn't these other operations also only give the __ relaxed guarantees?
HTH
Torsten -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |