Re: [PATCH 2/3] percpu_stats: Simple per-cpu statistics count helper functions

From: Tejun Heo
Date: Wed Apr 06 2016 - 18:54:33 EST


Hello,

On Wed, Apr 06, 2016 at 05:51:45PM -0400, Waiman Long wrote:
> >>+ /*
> >>+ * If a statistics count is in the middle of being updated, it
> >>+ * is possible that the above clearing may not work. So we need
> >>+ * to double check again to make sure that the counters are really
> >>+ * cleared. Still there is a still a very small chance that the
> >>+ * second clearing does not work.
> >>+ */
> >>+ for_each_possible_cpu(cpu) {
> >>+ unsigned long *pstats = per_cpu_ptr(pcs->stats, cpu);
> >>+ int stat;
> >>+
> >>+ for (stat = 0; stat< pcs->nstats; stat++, pstats++)
> >>+ if (*pstats)
> >>+ *pstats = 0;
> >>+ }
> >I don't think this is acceptable.
>
> I am not sure what you mean here by not acceptable. Please enlighten me on
> that.

Hmmm... I thought that was pretty clear. Try-twice-and-we-are-probably-okay
is simply not acceptable. Please make it watertight.

Thanks.

--
tejun