On Mon, Oct 6, 2014 at 2:51 PM, Joe Perches <j...@perches.com> wrote: > John, can you please verify that these gen_stats accesses > are unnecessary? I believe the compiler can elide them in > any case, but I'm not sure what you intended here. > > net/core/dev.c | 4 ++-- > net/core/gen_stats.c | 4 ---- > net/core/rtnetlink.c | 3 +-- > 3 files changed, 3 insertions(+), 8 deletions(-)
You need to split this patch. > diff --git a/net/core/gen_stats.c b/net/core/gen_stats.c > index 14681b9..01be9cf 100644 > --- a/net/core/gen_stats.c > +++ b/net/core/gen_stats.c > @@ -106,13 +106,9 @@ __gnet_stats_copy_basic_cpu(struct > gnet_stats_basic_packed *bstats, > for_each_possible_cpu(i) { > struct gnet_stats_basic_cpu *bcpu = per_cpu_ptr(cpu, i); > unsigned int start; > - __u64 bytes; > - __u32 packets; > > do { > start = u64_stats_fetch_begin_irq(&bcpu->syncp); > - bytes = bcpu->bstats.bytes; > - packets = bcpu->bstats.packets; > } while (u64_stats_fetch_retry_irq(&bcpu->syncp, start)); Looks like we really need them: diff --git a/net/core/gen_stats.c b/net/core/gen_stats.c index 14681b9..7948ecf 100644 --- a/net/core/gen_stats.c +++ b/net/core/gen_stats.c @@ -115,8 +115,8 @@ __gnet_stats_copy_basic_cpu(struct gnet_stats_basic_packed *bstats, packets = bcpu->bstats.packets; } while (u64_stats_fetch_retry_irq(&bcpu->syncp, start)); - bstats->bytes += bcpu->bstats.bytes; - bstats->packets += bcpu->bstats.packets; + bstats->bytes += bytes; + bstats->packets += packets; } } -- 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/