Alexei Starovoitov [off-list ref] writes:
On Wed, Sep 9, 2020 at 8:30 PM David Ahern [off-list ref] wrote:
quoted
quoted
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