Re: [PATCHv11 bpf-next 2/5] xdp: add a new helper for dev map multicast support

Toke Høiland-Jørgensen
2020-09-10T09:45:05Z

Alexei Starovoitov <alexei.starovoitov@gmail.com> writes:

> On Wed, Sep 9, 2020 at 8:30 PM David Ahern <dsahern@gmail.com> wrote:
>> >
>> > I think the packets modification (edit dst mac, add vlan tag, etc) should be
>> > done on egress, which rely on David's XDP egress support.
>>
>> agreed. The DEVMAP used for redirect can have programs attached that
>> update the packet headers - assuming you want to update them.
>
> Then you folks have to submit them as one set.
> As-is the programmer cannot achieve correct behavior.

The ability to attach a program to devmaps is already there. See:

fbee97feed9b ("bpf: Add support to attach bpf program to a devmap entry")

But now that you mention it, it does appear that this series is skipping
the hook that will actually run such a program. Didn't realise that was
in the caller of bq_enqueue() and not inside bq_enqueue() itself...

Hangbin, you'll need to add the hook for dev_map_run_prog() before
bq_enqueue(); see the existing dev_map_enqueue() function.

-Toke