Re: [PATCH net-next v2 2/2] bpf: let bpf_warn_invalid_xdp_action() report more info

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

 



Hello,

On Fri, 2021-11-26 at 19:57 +0100, Paolo Abeni wrote:
> On Fri, 2021-11-26 at 10:19 -0800, Jakub Kicinski wrote:
> > On Fri, 26 Nov 2021 12:19:11 +0100 Paolo Abeni wrote:
> > > -void bpf_warn_invalid_xdp_action(u32 act)
> > > +void bpf_warn_invalid_xdp_action(struct net_device *dev, struct bpf_prog *prog, u32 act)
> > >  {
> > >  	const u32 act_max = XDP_REDIRECT;
> > >  
> > > -	pr_warn_once("%s XDP return value %u, expect packet loss!\n",
> > > +	pr_warn_once("%s XDP return value %u on prog %s (id %d) dev %s, expect packet loss!\n",
> > >  		     act > act_max ? "Illegal" : "Driver unsupported",
> > > -		     act);
> > > +		     act, prog->aux->name, prog->aux->id, dev->name ? dev->name : "");
> > >  }
> > 
> > Since we have to touch all the drivers each time the prototype of this
> > function is changed - would it make sense to pass in rxq instead? It has
> > more info which may become useful at some point.
> 
> I *think* for this specific scenario the device name provides all the
> necessary info - the users need to know the driver causing the issue.
> 
> Others similar xdp helpers - e.g. trace_xdp_exception() - have the same
> arguments list used here. If the rxq is useful I guess we will have to
> change even them, and touch all the drivers anyway.

Following the above reasoning I'm going to post v3 with the same
argument list used here, unless someone stops me soon ;)

Thanks,

Paolo




[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