aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/dpdk
AgeCommit message (Expand)AuthorFilesLines
2020-10-21vlib: print logs to stderr if interactive or nosyslog setDamjan Marion5-12/+16
2020-10-21misc: minimize dependencies on udp.hFlorin Coras1-1/+1
2020-10-21dpdk: Disable VLAN filtering for VLAN sub-interface in i40e driverDimitrios Markou1-2/+2
2020-10-19misc: don't export symbols from pluginsDamjan Marion1-1/+1
2020-10-14crypto: fixed ipsec_mb lib dependenciesPiotrX Kleski1-15/+0
2020-10-12misc: clang-11 and gcc-10 supportDamjan Marion1-2/+2
2020-10-02dpdk: split PCI blacklist rte_eal args from startup.confVladimir Ratnikov1-2/+3
2020-09-29dpdk: fix compileFan Zhang2-51/+15
2020-09-21dpdk: hugepage availibility check using new apiDamjan Marion1-11/+9
2020-09-17vppinfra: support main heap with different page sizesDamjan Marion1-1/+1
2020-09-11dpdk: fix coverity defect #214232, #182930Chenmin Sun2-1/+8
2020-09-09crypto: change cryptodev with new cryptodev APIFan Zhang2-0/+1581
2020-09-09interface: support configuring RSS steering queuesChenmin Sun3-34/+154
2020-09-08dpdk-ipsec: don't leak buffers on crypto alloc failureChristian Hopps2-6/+8
2020-09-08dpdk: fix extended stat stringsChristian Hopps1-2/+2
2020-09-08dpdk: fix interface counters to never go backwardChristian Hopps1-33/+24
2020-09-04dpdk-ipsec: use init function instead of one-time processChristian Hopps1-11/+3
2020-09-04dpdk-ipsec: fix show outputChristian Hopps3-3/+3
2020-09-03crypto: SW scheduler async crypto enginePiotrX Kleski1-2/+4
2020-09-01dpdk: fix mac address length was wrongjiangxiaoming1-1/+1
2020-08-31flow: code refactorChenmin Sun1-391/+196
2020-08-27dpdk: fix blacklistsVladimir Ratnikov2-2/+10
2020-07-23dpdk: device_id sorted order for cryptodevVladimir Ratnikov1-0/+16
2020-07-16dpdk: fix coverity warning in the flow codeChenmin Sun1-1/+1
2020-07-16crypto: fix coverity issue for cryptodevFan Zhang1-65/+103
2020-07-16vppinfra: fix format_c_identifier vector overflowBenoît Ganne1-4/+2
2020-07-09dpdk: add txq struct and fix dpdk tx lockBenoît Ganne4-19/+23
2020-06-27flow: add IPSec ESP/AH flowChenmin Sun1-0/+71
2020-06-15dpdk: cryptodev: fix non-null terminated stringsBenoît Ganne1-4/+4
2020-06-04dpdk: cleanup, add rx queue structDamjan Marion5-59/+31
2020-05-27ethernet: fix DMAC check and skip unnecessary ones (VPP-1868)John Lo1-19/+28
2020-05-27dpdk: bump to DPDK v20.05Damjan Marion1-0/+7
2020-05-24dpdk: del warnings that duplicate counters in espAlexander Chernavin2-12/+0
2020-05-19dpdk: change netvsc device port typeMatthew Smith1-1/+1
2020-05-19dpdk: fix pktmbuf pool private data initBenoît Ganne1-0/+1
2020-05-14dpdk: fix crash with chelsio pmdBenoît Ganne1-6/+12
2020-05-06crypto: fix coverity issuesFan Zhang1-5/+11
2020-05-05flow: explicitly convert RSS function types in dpdk_pluginChenmin Sun1-1/+34
2020-05-04fib: midchain adjacency optimisationsNeale Ranns1-14/+0
2020-04-30flow: add l2tpv3oip flowChenmin Sun1-9/+45
2020-04-30crypto: introduce async crypto infraFan Zhang5-9/+1435
2020-04-29misc: switch to clang-9Damjan Marion1-1/+1
2020-04-29flow: explicit rss function enum castFlorin Coras1-1/+1
2020-04-28flow: add RSS supportChenmin Sun4-32/+80
2020-04-27vlib: deprecate i2c and cjDave Barach4-4/+0
2020-04-22misc: fix coverity warningsDave Barach1-2/+3
2020-04-22devices: Adding ConnectX-6 DX Device ID for validationAmir Zeidner1-2/+7
2020-04-17dpdk: fix udp-encap for esp in transport modeAlexander Chernavin2-10/+9
2020-04-02dpdk: VM VHOST tests with rxq>1 failingSteven Luong1-0/+1
2020-03-27dpdk: enable DPDK iAVF PMDChenmin Sun3-0/+23
(input, "l2-table %d", &l2_table_index)) idx_cnt++; else if (unformat (input, "del")) is_add = 0; else break; } if (sw_if_index == ~0) return clib_error_return (0, "Interface must be specified."); if (!idx_cnt) return clib_error_return (0, "Table index should be specified."); if (idx_cnt > 1) return clib_error_return (0, "Only one table index per API is allowed."); rv = vnet_set_policer_classify_intfc (vm, sw_if_index, ip4_table_index, ip6_table_index, l2_table_index, is_add); switch (rv) { case 0: break; case VNET_API_ERROR_NO_MATCHING_INTERFACE: return clib_error_return (0, "No such interface"); case VNET_API_ERROR_NO_SUCH_ENTRY: return clib_error_return (0, "No such classifier table"); } return 0; } /* *INDENT-OFF* */ VLIB_CLI_COMMAND (set_policer_classify_command, static) = { .path = "set policer classify", .short_help = "set policer classify interface <int> [ip4-table <index>]\n" " [ip6-table <index>] [l2-table <index>] [del]", .function = set_policer_classify_command_fn, }; /* *INDENT-ON* */ static uword unformat_table_type (unformat_input_t * input, va_list * va) { u32 *r = va_arg (*va, u32 *); u32 tid; if (unformat (input, "ip4")) tid = POLICER_CLASSIFY_TABLE_IP4; else if (unformat (input, "ip6")) tid = POLICER_CLASSIFY_TABLE_IP6; else if (unformat (input, "l2")) tid = POLICER_CLASSIFY_TABLE_L2; else return 0; *r = tid; return 1; } static clib_error_t * show_policer_classify_command_fn (vlib_main_t * vm, unformat_input_t * input, vlib_cli_command_t * cmd) { policer_classify_main_t *pcm = &policer_classify_main; u32 type = POLICER_CLASSIFY_N_TABLES; u32 *vec_tbl; int i; if (unformat (input, "type %U", unformat_table_type, &type)) ; else return clib_error_return (0, "Type must be specified.");; if (type == POLICER_CLASSIFY_N_TABLES) return clib_error_return (0, "Invalid table type."); vec_tbl = pcm->classify_table_index_by_sw_if_index[type]; if (vec_len (vec_tbl)) vlib_cli_output (vm, "%10s%20s\t\t%s", "Intfc idx", "Classify table", "Interface name"); else vlib_cli_output (vm, "No tables configured."); for (i = 0; i < vec_len (vec_tbl); i++) { if (vec_elt (vec_tbl, i) == ~0) continue; vlib_cli_output (vm, "%10d%20d\t\t%U", i, vec_elt (vec_tbl, i), format_vnet_sw_if_index_name, pcm->vnet_main, i); } return 0; } /* *INDENT-OFF* */ VLIB_CLI_COMMAND (show_policer_classify_command, static) = { .path = "show classify policer", .short_help = "show classify policer type [ip4|ip6|l2]", .function = show_policer_classify_command_fn, }; /* *INDENT-ON* */ /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */