diff options
author | Mohsin Kazmi <sykazmi@cisco.com> | 2020-08-26 11:07:48 +0200 |
---|---|---|
committer | Mohsin Kazmi <sykazmi@cisco.com> | 2020-09-02 08:48:58 +0000 |
commit | 50bd16559933576ed632eff8757d5954e93e99ce (patch) | |
tree | 959bc4b4af435479f9123a7e06449b6a2d840cb3 /src/vnet/devices/tap | |
parent | 1b6ed022e7a37fd1b35f2f9272cc4abc159d616d (diff) |
tap: add virtio 1.1 API flag
Type: feature
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Change-Id: I3e00deb94943c545d1649865b2efdf7d51b90f4d
Diffstat (limited to 'src/vnet/devices/tap')
-rw-r--r-- | src/vnet/devices/tap/cli.c | 6 | ||||
-rw-r--r-- | src/vnet/devices/tap/tap.h | 4 | ||||
-rw-r--r-- | src/vnet/devices/tap/tapv2.api | 2 |
3 files changed, 10 insertions, 2 deletions
diff --git a/src/vnet/devices/tap/cli.c b/src/vnet/devices/tap/cli.c index fa5fa91e7a6..704cd18d729 100644 --- a/src/vnet/devices/tap/cli.c +++ b/src/vnet/devices/tap/cli.c @@ -100,6 +100,10 @@ tap_create_command_fn (vlib_main_t * vm, unformat_input_t * input, args.tap_flags |= TAP_FLAG_ATTACH; else if (unformat (line_input, "tun")) args.tap_flags |= TAP_FLAG_TUN; + else if (unformat (line_input, "packed")) + args.tap_flags |= TAP_FLAG_PACKED; + else if (unformat (line_input, "in-order")) + args.tap_flags |= TAP_FLAG_IN_ORDER; else if (unformat (line_input, "hw-addr %U", unformat_ethernet_address, args.mac_addr.bytes)) args.mac_addr_set = 1; @@ -141,7 +145,7 @@ VLIB_CLI_COMMAND (tap_create_command, static) = { "[host-ip4-gw <ip4-addr>] [host-ip6-gw <ip6-addr>] " "[host-mac-addr <host-mac-address>] [host-if-name <name>] " "[host-mtu-size <size>] [no-gso|gso|csum-offload|gro-coalesce] " - "[persist] [attach] [tun]", + "[persist] [attach] [tun] [packed] [in-order]", .function = tap_create_command_fn, }; /* *INDENT-ON* */ diff --git a/src/vnet/devices/tap/tap.h b/src/vnet/devices/tap/tap.h index 93b5da51dc5..46f13a4e274 100644 --- a/src/vnet/devices/tap/tap.h +++ b/src/vnet/devices/tap/tap.h @@ -28,7 +28,9 @@ _ (PERSIST, 2) \ _ (ATTACH, 3) \ _ (TUN, 4) \ - _ (GRO_COALESCE, 5) + _ (GRO_COALESCE, 5) \ + _ (PACKED, 6) \ + _ (IN_ORDER, 7) typedef enum { diff --git a/src/vnet/devices/tap/tapv2.api b/src/vnet/devices/tap/tapv2.api index 94e1a7c00c2..6b6618411a6 100644 --- a/src/vnet/devices/tap/tapv2.api +++ b/src/vnet/devices/tap/tapv2.api @@ -32,6 +32,8 @@ enum tap_flags { TAP_API_FLAG_ATTACH = 8, /* attach to the existing persistence interface after vpp crash/restart */ TAP_API_FLAG_TUN = 16, /* create TUN interface instead of tap */ TAP_API_FLAG_GRO_COALESCE = 32, /* enable packet coalescing on tx side, provided gso enabled */ + TAP_API_FLAG_PACKED = 64 [backwards_compatible], /* enable packed ring support */ + TAP_API_FLAG_IN_ORDER = 128 [backwards_compatible], /* enable in-order desc support */ }; /** \brief Initialize a new tap interface with the given parameters |