On Thu, 22 Apr 2021 15:14:54 +0800 Hangbin Liu <liuhangbin@xxxxxxxxx> wrote: > Add a bpf selftest for new helper xdp_redirect_map_multi(). In this > test there are 3 forward groups and 1 exclude group. The test will > redirect each interface's packets to all the interfaces in the forward > group, and exclude the interface in exclude map. > > Two maps (DEVMAP, DEVMAP_HASH) and two xdp modes (generic, drive) will > be tested. XDP egress program will also be tested by setting pkt src MAC > to egress interface's MAC address. > > For more test details, you can find it in the test script. Here is > the test result. > ]# ./test_xdp_redirect_multi.sh Running this test takes a long time around 3 minutes. $ sudo time -v ./test_xdp_redirect_multi.sh Pass: xdpgeneric arp ns1-2 Pass: xdpgeneric arp ns1-3 Pass: xdpgeneric arp ns1-4 Pass: xdpgeneric ping ns1-2 Pass: xdpgeneric ping ns1-3 Pass: xdpgeneric ping ns1-4 Pass: xdpgeneric ping6 ns1-2 Pass: xdpgeneric ping6 ns1-1 number Pass: xdpgeneric ping6 ns1-2 number Pass: xdpdrv arp ns1-2 Pass: xdpdrv arp ns1-3 Pass: xdpdrv arp ns1-4 Pass: xdpdrv ping ns1-2 Pass: xdpdrv ping ns1-3 Pass: xdpdrv ping ns1-4 Pass: xdpdrv ping6 ns1-2 Pass: xdpdrv ping6 ns1-1 number Pass: xdpdrv ping6 ns1-2 number Pass: xdpegress mac ns1-2 Pass: xdpegress mac ns1-3 Pass: xdpegress mac ns1-4 Summary: PASS 21, FAIL 0 Command being timed: "./test_xdp_redirect_multi.sh" User time (seconds): 0.15 System time (seconds): 0.51 Percent of CPU this job got: 0% Elapsed (wall clock) time (h:mm:ss or m:ss): 3:09.68 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 6904 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 13 Minor (reclaiming a frame) page faults: 46316 Voluntary context switches: 1907 Involuntary context switches: 371 Swaps: 0 File system inputs: 0 File system outputs: 0 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer