On Tue, Nov 13, 2012 at 09:52:09AM +0800, Shan Wei wrote: > From: Shan Wei <davids...@tencent.com> >
Please add a proper commit message, explaining why you do this change. > > Signed-off-by: Shan Wei <davids...@tencent.com> > --- > v4: > derefrence pointer before reading to avoid compile warning. > --- > net/xfrm/xfrm_ipcomp.c | 8 +++----- > 1 files changed, 3 insertions(+), 5 deletions(-) > > diff --git a/net/xfrm/xfrm_ipcomp.c b/net/xfrm/xfrm_ipcomp.c > index e5246fb..2906d52 100644 > --- a/net/xfrm/xfrm_ipcomp.c > +++ b/net/xfrm/xfrm_ipcomp.c > @@ -276,18 +276,16 @@ static struct crypto_comp * __percpu > *ipcomp_alloc_tfms(const char *alg_name) > struct crypto_comp * __percpu *tfms; > int cpu; > > - /* This can be any valid CPU ID so we don't need locking. */ > - cpu = raw_smp_processor_id(); > > list_for_each_entry(pos, &ipcomp_tfms_list, list) { > struct crypto_comp *tfm; > > - tfms = pos->tfms; > - tfm = *per_cpu_ptr(tfms, cpu); > + /* This can be any valid CPU ID so we don't need locking. */ > + tfm = __this_cpu_read(*pos->tfms); This should just fetch the tfm pointer, so why exactly __this_cpu_read is better than __this_cpu_ptr? Please keep in mind that performance is not the most important thing here. It's much more important that it works in any case. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/