From c4665093cdb0a8122d9640b6f5b3acd627918f32 Mon Sep 17 00:00:00 2001 From: Chenmin Sun Date: Mon, 6 Jul 2020 08:20:39 +0800 Subject: interface: support configuring RSS steering queues This patch adds the RSS steering queues set interface, and it's implementation in DPDK device: /* Interface to set rss queues of the interface */ typedef clib_error_t *(vnet_interface_rss_queues_set_t) (struct vnet_main_t * vnm, struct vnet_hw_interface_t * hi, clib_bitmap_t *bitmap); This patch also introduces a command line to set the RSS queues: set interface rss queues > To display the rss queues, use "show hardware-interfaces" Below is the example to configure rss queues for interface Gig0: vpp# set interface rss queues Gig0 list 0,2,4-7 vpp# show hardware-interfaces brief Name Idx Link Hardware VirtualFunctionEthernet18/1/0 1 down VirtualFunctionEthernet18/1/0 Link speed: unknown RSS queues: 0 2 4 5 6 7 local0 0 down local0 Link speed: unknown vpp# Users can also configure the rss queues on a dpdk interface in startup.conf: dpdk { dev 0000:18:01.0 { rss-queues 0,2,5-7 } } Type: feature Signed-off-by: Chenmin Sun Change-Id: I1835595a1c54016a84eabee9fd62ce137935385d --- src/plugins/dpdk/device/dpdk.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/plugins/dpdk/device/dpdk.h') diff --git a/src/plugins/dpdk/device/dpdk.h b/src/plugins/dpdk/device/dpdk.h index 963bc811ee1..40f9dce0c05 100644 --- a/src/plugins/dpdk/device/dpdk.h +++ b/src/plugins/dpdk/device/dpdk.h @@ -260,6 +260,7 @@ typedef struct clib_bitmap_t * workers; u8 tso; u8 *devargs; + clib_bitmap_t *rss_queues; #define DPDK_DEVICE_TSO_DEFAULT 0 #define DPDK_DEVICE_TSO_OFF 1 @@ -373,7 +374,6 @@ typedef struct void dpdk_device_setup (dpdk_device_t * xd); void dpdk_device_start (dpdk_device_t * xd); void dpdk_device_stop (dpdk_device_t * xd); - int dpdk_port_state_callback (dpdk_portid_t port_id, enum rte_eth_event_type type, void *param, void *ret_param); -- cgit 1.2.3-korg