在 2025/6/21 02:25, Alexei Starovoitov 写道:
On Thu, Jun 19, 2025 at 8:31 PM Tao Chen <[email protected]> wrote:

在 2025/6/20 10:59, Alexei Starovoitov 写道:
On Thu, Jun 19, 2025 at 7:46 PM Tao Chen <[email protected]> wrote:

在 2025/6/20 01:17, Alexei Starovoitov 写道:
On Wed, Jun 18, 2025 at 8:44 PM Tao Chen <[email protected]> wrote:

Show kprobe_multi link info with fdinfo, the info as follows:

link_type:      kprobe_multi
link_id:        1
prog_tag:       a15b7646cb7f3322
prog_id:        21
type:   kprobe_multi

..

+       seq_printf(seq,
+                  "type:\t%s\n"
+                  "kprobe_cnt:\t%u\n"
+                  "missed:\t%lu\n",
+                  kmulti_link->flags == BPF_F_KPROBE_MULTI_RETURN ? 
"kretprobe_multi" :
+                                        "kprobe_multi",

why print the same info twice ?
seq_printf(m, "link_type:\t%s\n", bpf_link_type_strs[type]);
in bpf_link_show_fdinfo() already did it in a cleaner way.


link_type only shows 'kprobe_multi', maybe we can show the format like:

Ohh. Especially so. It would be wrong and confusing to display:
link_type:      kprobe_multi
type: kretprobe_multi

Let's fix 'link_type' to display it properly.

What do you think show like this:

      link_type:      kprobe_multi
      link_id:        1
      prog_tag:       33be53a4fd673e1d
      prog_id:        21
      retprobe:       false

It leaks implementation details.
For the kernel the link type is BPF_LINK_TYPE_KPROBE_MULTI for retprobe too,
but show_fdinfo is for humans.
'link_type:' field can be more precise and differentiate
what's effectively a subtype of the link.

Well, i will fix it in v5. Thanks.

--
Best Regards
Tao Chen

Reply via email to