Re: [PATCH 1/2] perf ftrace: Check min/max latency only with bucket range

From: Arnaldo Carvalho de Melo
Date: Fri Jan 10 2025 - 13:13:17 EST


On Fri, Jan 10, 2025 at 04:11:05PM +0100, Gabriele Monaco wrote:
>
> On Fri, 2025-01-10 at 11:03 -0300, Arnaldo Carvalho de Melo wrote:
> > On Fri, Jan 10, 2025 at 10:09:14AM +0000, Gabriele Monaco wrote:
> > > 2025-01-10T00:46:49Z Namhyung Kim <namhyung@xxxxxxxxxx>:
> > >
> > > > On Thu, Jan 09, 2025 at 08:53:02AM +0100, Gabriele Monaco wrote:
> > > > > On Wed, 2025-01-08 at 13:00 -0800, Namhyung Kim wrote:
> > > > > > It's an optional feature and remains 0 when bucket range is
> > > > > > not
> > > > > > given.
> > > > > > And it makes the histogram goes to the last entry always
> > > > > > because any
> > > > > > latency (num) is greater than or equal to 0.
> > > > >
> > > > > Thanks Namhyung for fixing this, something definitely slipped
> > > > > while
> > > > > testing..
> > > > >
> > > > > I confirm your patches work well also when the bucket range is
> > > > > provided but the
> > > > > min latency isn't.
> > > > >
> > > > > I'm wondering if it would be cleaner to propagate your changes
> > > > > (using
> > > > > min/max latency only if bucket_range is provided) also to
> > > > > make_histogram. That function currently works since we assume
> > > > > min_latency to be always 0, which is the case but probably not
> > > > > considering it altogether would look a bit better and prevent
> > > > > some
> > > > > headache in the future.
> > > >
> > > > It looks good.  One thing I concern is 'num += min_latency'
> > > > before
> > > > do_inc.  I put it there to make it symmetric to 'num -=
> > > > min_latency'
> > > > so it should go to inside the block too.
> > > >
> > > > Or you could factor it out as a function like 'i =
> > > > get_bucket_index(num)'
> > > > so that it can keep the original num for the stats.
> > > >
> > >
> > > Good point, I can have a deeper look at that. But I'd say it can
> > > come as a cleanup patch later.
> > > I have a couple more changes in mind and this would be no longer
> > > related to your changes.
> >
> > I'm tentatively taking this as an:
> >
> > Acked-by: Gabriele Monaco <gmonaco@xxxxxxxxxx>
> >
> > But it would be great to have it as a Reviewed-by and perhaps a
> > Tested-by, provided explicitely in response to this thread, ok?
> >
> > Thanks,
> >
> > - Arnaldo
> >
>
> I did test after applying both patches, went through the code and
> confirm my test worked as expected, and I confirm the issue is there
> before patching. I tested also in between, so feel free to add to both
> patches:
>
> Reviewed-by: Gabriele Monaco <gmonaco@xxxxxxxxxx>
> Tested-by: Gabriele Monaco <gmonaco@xxxxxxxxxx>

Thanks, added.

> (I'm assuming you are referring to 1/2 and 2/2 and not the little patch

Yeah, Namhyung's 1/2 and 2/2 patches, these:

https://lore.kernel.org/r/20250108210015.1188531-1-namhyung@xxxxxxxxxx
https://lore.kernel.org/r/20250108210015.1188531-2-namhyung@xxxxxxxxxx

- Arnaldo

> I sent in the first answer)
>
> Thanks,
> Gabriele