VPP-1341: fix loopback interface graph arcs 72/13472/7
authorDave Barach <dave@barachs.net>
Sat, 14 Jul 2018 00:12:45 +0000 (20:12 -0400)
committerDamjan Marion <dmarion@me.com>
Sun, 15 Jul 2018 08:51:15 +0000 (08:51 +0000)
commit635ec3bdd073101dd513083be4f1edfb64e29098
tree5f837acadc4955f07f42da45694ecbe1261ea08c
parent0e6f4d6af4191340a5f542c9eeb0f34dda32e745
VPP-1341: fix loopback interface graph arcs

Remove broken special case from l2_input.c:set_int_l2_mode(), which
turns out to confuse the graph dispatch engine.

The loopback TX function needs to push packets to either
ethernet-input or to l2-input, based on bridge / BVI
configuration. Rather than overloading a single graph arc - and making
vain attempts to reconfigure it - create both arcs and use the correct
one.

Rewrote the loopback tx function as an idosyncratic multi-arch
quad/single loop fn.

Change-Id: I15b56ce641d90a11e7b3c7d23859f40e168dd7b2
Signed-off-by: Dave Barach <dave@barachs.net>
src/vnet/ethernet/interface.c
src/vnet/interface_funcs.h
src/vnet/l2/l2_input.c
src/vnet/unix/tapcli.c