Re: [PATCHv6 bpf-next 2/3] sample/bpf: add xdp_redirect_map_multicast test

Hangbin Liu
2020-07-11T00:21:40Z

On Fri, Jul 10, 2020 at 04:32:35PM +0200, Daniel Borkmann wrote:
> On 7/10/20 8:41 AM, Hangbin Liu wrote:
> > On Fri, Jul 10, 2020 at 12:40:11AM +0200, Daniel Borkmann wrote:
> > > > +SEC("xdp_redirect_map_multi")
> > > > +int xdp_redirect_map_multi_prog(struct xdp_md *ctx)
> > > > +{
> > > > + long *value;
> > > > + u32 key = 0;
> > > > +
> > > > + /* count packet in global counter */
> > > > + value = bpf_map_lookup_elem(&rxcnt, &key);
> > > > + if (value)
> > > > + *value += 1;
> > > > +
> > > > + return bpf_redirect_map_multi(&forward_map, &null_map,
> > > > + BPF_F_EXCLUDE_INGRESS);
> > >
> > > Why not extending to allow use-case like ...
> > >
> > > return bpf_redirect_map_multi(&fwd_map, NULL, BPF_F_EXCLUDE_INGRESS);
> > >
> > > ... instead of requiring a dummy/'null' map?
> >
> > I planed to let user set NULL, but the arg2_type is ARG_CONST_MAP_PTR, which
> > not allow NULL pointer.
>
> Right, but then why not adding a new type ARG_CONST_MAP_PTR_OR_NULL ?

Yes, that's what I plan for next step.

Thanks
Hangbin