Re: [PATCH v3 bpf-next 02/10] bpftool: Dump the kernel symbol's module name

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jun 12, 2023 at 8:16 AM Yafang Shao <laoar.shao@xxxxxxxxx> wrote:
>
> If the kernel symbol is in a module, we will dump the module name as
> well.
>
> Signed-off-by: Yafang Shao <laoar.shao@xxxxxxxxx>
> ---
>  tools/bpf/bpftool/xlated_dumper.c | 6 +++++-
>  tools/bpf/bpftool/xlated_dumper.h | 2 ++
>  2 files changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/tools/bpf/bpftool/xlated_dumper.c b/tools/bpf/bpftool/xlated_dumper.c
> index da608e1..dd917f3 100644
> --- a/tools/bpf/bpftool/xlated_dumper.c
> +++ b/tools/bpf/bpftool/xlated_dumper.c
> @@ -46,7 +46,11 @@ void kernel_syms_load(struct dump_data *dd)
>                 }
>                 dd->sym_mapping = tmp;
>                 sym = &dd->sym_mapping[dd->sym_count];
> -               if (sscanf(buff, "%p %*c %s", &address, sym->name) != 2)
> +
> +               /* module is optional */
> +               sym->module[0] = '\0';
> +               if (sscanf(buff, "%p %*c %s %s", &address, sym->name,
> +                   sym->module) < 2)

nit: please keep it single line if it fits in under 100 characters

>                         continue;
>                 sym->address = (unsigned long)address;
>                 if (!strcmp(sym->name, "__bpf_call_base")) {
> diff --git a/tools/bpf/bpftool/xlated_dumper.h b/tools/bpf/bpftool/xlated_dumper.h
> index 9a94637..5df8025 100644
> --- a/tools/bpf/bpftool/xlated_dumper.h
> +++ b/tools/bpf/bpftool/xlated_dumper.h
> @@ -5,12 +5,14 @@
>  #define __BPF_TOOL_XLATED_DUMPER_H
>
>  #define SYM_MAX_NAME   256
> +#define MODULE_NAME_LEN        64
>
>  struct bpf_prog_linfo;
>
>  struct kernel_sym {
>         unsigned long address;
>         char name[SYM_MAX_NAME];
> +       char module[MODULE_NAME_LEN];
>  };
>
>  struct dump_data {
> --
> 1.8.3.1
>





[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux