Re: [PATCH] tools: Fix incorrect calculation of object size by sizeof

From: Namhyung Kim
Date: Tue Jun 20 2023 - 15:19:23 EST


Hello,

On Mon, Jun 19, 2023 at 1:21 AM Li Dong <lidong@xxxxxxxx> wrote:
>
> What we need to calculate is the size of the object, not the size of the
> pointer.
>
> Signed-off-by: Li Dong <lidong@xxxxxxxx>

Since this problem was introduced in the current dev cycle and not in the
mainline yet, I think we can skip the Fixes tag.

Acked-by: Namhyung Kim <namhyung@xxxxxxxxxx>

Thanks,
Namhyung


> ---
> tools/perf/util/scripting-engines/trace-event-python.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/util/scripting-engines/trace-event-python.c b/tools/perf/util/scripting-engines/trace-event-python.c
> index 59063ec98619..25fcd6630a4d 100644
> --- a/tools/perf/util/scripting-engines/trace-event-python.c
> +++ b/tools/perf/util/scripting-engines/trace-event-python.c
> @@ -771,12 +771,12 @@ static void set_regs_in_dict(PyObject *dict,
> int size = __sw_hweight64(attr->sample_regs_intr) * 28;
> char *bf = malloc(size);
>
> - regs_map(&sample->intr_regs, attr->sample_regs_intr, arch, bf, sizeof(bf));
> + regs_map(&sample->intr_regs, attr->sample_regs_intr, arch, bf, size);
>
> pydict_set_item_string_decref(dict, "iregs",
> _PyUnicode_FromString(bf));
>
> - regs_map(&sample->user_regs, attr->sample_regs_user, arch, bf, sizeof(bf));
> + regs_map(&sample->user_regs, attr->sample_regs_user, arch, bf, size);
>
> pydict_set_item_string_decref(dict, "uregs",
> _PyUnicode_FromString(bf));
> --
> 2.31.1.windows.1
>