On Wed, 16 Aug 2023 19:12:25 -0400 Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > On Wed, 16 Aug 2023 16:37:54 -0600 > Ross Zwisler <zwisler@xxxxxxxxxx> wrote: > > > On Fri, Aug 11, 2023 at 01:39:37AM -0400, Steven Rostedt wrote: > > > From: "Steven Rostedt (Google)" <rostedt@xxxxxxxxxxx> > > > > > > In the update, instead of using the heap, use the stack to save the old > > > values. This should save time where it does not need to allocate and then > > > free the value list to do an update. > > > > > > Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx> > > > --- > > > src/histograms.c | 48 ++++++++++++++++++++++++++++++++++-------------- > > > 1 file changed, 34 insertions(+), 14 deletions(-) > > > > > <> > > > @@ -772,20 +778,34 @@ fail_entry: > > > * > > > * Frees the old vals field of @entry, unless an error occurs. > > > * > > > - * Return 0 on success, -1 on error. > > > + * Return 1 on success, -1 on error. > > > > The code is now returning 1, 0 and -1 in different cases, and all three of > > these return values are percolating up to be returned by traceeval_insert(), > > which is only supposed to return 0 or 1. > > > > I didn't update the comments well. The idea is, return 1 if the element > already existed, 0 if it did not, and -1 on error. I need to fix this. Anyway, it this does not belong in this patch. The return value of traceeval_insert() change should be a separate patch. One that I will add in another series after this one. -- Steve