On Wed, May 23, 2018 at 10:13:22AM -0700, Martin KaFai Lau wrote:
> > +           __u32           prog_id;        /* output: prod_id */
> > +           __u32           attach_info;    /* output: BPF_ATTACH_* */
> > +           __u64           probe_offset;   /* output: probe_offset */
> > +           __u64           probe_addr;     /* output: probe_addr */
> > +   } task_fd_query;
> >  } __attribute__((aligned(8)));
> >  
> >  /* The description below is an attempt at providing documentation to eBPF
> > @@ -2458,4 +2475,14 @@ struct bpf_fib_lookup {
> >     __u8    dmac[6];     /* ETH_ALEN */
> >  };
> >  
> > +/* used by <task, fd> based query */
> > +enum {
> Nit. Instead of a comment, is it better to give this
> enum a descriptive name?
> 
> > +   BPF_ATTACH_RAW_TRACEPOINT,      /* tp name */
> > +   BPF_ATTACH_TRACEPOINT,          /* tp name */
> > +   BPF_ATTACH_KPROBE,              /* (symbol + offset) or addr */
> > +   BPF_ATTACH_KRETPROBE,           /* (symbol + offset) or addr */
> > +   BPF_ATTACH_UPROBE,              /* filename + offset */
> > +   BPF_ATTACH_URETPROBE,           /* filename + offset */
> > +};

One more nit here.
Can we come up with better names for the above?
'attach' is a verb. I cannot help but read above as it's an action
for the kernel to attach to something and not the type of event
where the program was attached to.
Since we pass task+fd into that BPF_TASK_FD_QUERY command how
about returning BPF_FD_TYPE_KPROBE, BPF_FD_TYPE_TRACEPOINT, ... ?

Reply via email to