From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5FAFFA0547 for ; Wed, 29 Sep 2021 12:09:54 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CA2B9410D7; Wed, 29 Sep 2021 12:09:53 +0200 (CEST) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2066.outbound.protection.outlook.com [40.107.237.66]) by mails.dpdk.org (Postfix) with ESMTP id 7296740E3C for ; Wed, 29 Sep 2021 12:09:52 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=S/QMzjRYdwsJCrq4YmKD0gENGGpDcooANUCLi5E2JPbIgCnxY/P1R5yk8UYbS9aL7cvYhzSDKzP9eruCaMIGrZ/RFmVkEjG7vdv84X3K12hphdN1Pv3Iz6DHbOKsRcYOXcvwxvxJ+ERQyQdY6WRtCK/vG11AuX4tNjq3ffe3+zhqdxNZ3CVXs6Vks9x2CA5xzeQOo8e8SNKyrsEw8SKfRNFgAnNlrWs4orT3BR9PMSE+V6jSSQw79b1DRw8uY1Y44VByxdQlGjIh1UeLALuimv0FtpEdxKiwPd0kZohh8VvVH0KLfKED4gZfNCyZOMTE5420YZYAK8XKE+VErBZh3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=rggwU6ZnSAOfRspxY0EvyoaUxnAGx9GWxoa1BezwyDk=; b=V+er6kH/BAOpiobqq1ZGF7V350i3xkViJjNm0OLN5ndSax2KsgupB8olLlFS3mj1Ili6hB47M+KkGHMsLPwpkt0zDRESODG97Hf2Q14S7i5N3h3QAQdzgnkimgn9cOlzxZa9vQKZw23Tv83Aq4yLDcgodt5suFFxx5arfWH1jH7OxF80cj5Rik9p7pANDIp/3fDEvLpihhQRyC5nlB9zIF2Aj7lteeeAf5C5HyDBKk13dLRF0fZ4MrtUZLbBhd6xVX/rc2KIDjIECbotdkPD36BDT/qgr054MTqxEi1Pp31hRlJ6vGKo3qXhmvyMs63wbhnVxbg42UppH+YRfMjhgA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rggwU6ZnSAOfRspxY0EvyoaUxnAGx9GWxoa1BezwyDk=; b=X2FQTawrrLxFXoJFX4MJjEd1BWh0J+BGyIU9uNE/HDdX7Hb9TFyBBMn5aK04kilepJ4dO7iewBFX8FUEvSmwTAB9PtIMJfUpMZjfukvR8O1PTdPtegr2EE9hKzfIPDKUmtbnJlIpojamMjgdCWYpSJ2Zt4+amROOJ7qM9ywDGBYUBDXldkw73XVPy4wVhSqeyEjJS/GxZGr4TPqMLgg76XsAb9xxr/pw0llMJFTuSZoaC+WsZtzn4Sk3TYwtsg6QU1RWAeIVuq24QPX/b7OSRrrObxQsOFNFklyT/hlkwgDI7RxpwZeKB3iJWSnpiHti4nFM0POGoKMkidmL9aqMtA== Received: from DM4PR12MB5039.namprd12.prod.outlook.com (2603:10b6:5:38a::18) by DM4PR12MB5342.namprd12.prod.outlook.com (2603:10b6:5:39f::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4544.14; Wed, 29 Sep 2021 10:09:51 +0000 Received: from DM4PR12MB5039.namprd12.prod.outlook.com ([fe80::3096:12ef:d306:d065]) by DM4PR12MB5039.namprd12.prod.outlook.com ([fe80::3096:12ef:d306:d065%7]) with mapi id 15.20.4544.021; Wed, 29 Sep 2021 10:09:51 +0000 From: Wisam Monther To: NBU-Contact-Thomas Monjalon , Anna A CC: "users@dpdk.org" , Matan Azrad , Slava Ovsiienko Subject: RE: Using rte_flow to distribute single flow type among multiple Rx queues using DPDK in Mellanox ConnectX-5 Ex Thread-Topic: Using rte_flow to distribute single flow type among multiple Rx queues using DPDK in Mellanox ConnectX-5 Ex Thread-Index: AQHXtPKhRgZmYdwneEKM00mZfqpd2au6xfAAgAAD5LA= Date: Wed, 29 Sep 2021 10:09:50 +0000 Message-ID: References: <1849453.UF46jR8BTF@thomas> In-Reply-To: <1849453.UF46jR8BTF@thomas> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: monjalon.net; dkim=none (message not signed) header.d=none;monjalon.net; dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 1ad799af-8178-4301-764d-08d98331469f x-ms-traffictypediagnostic: DM4PR12MB5342: x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: tPeUk0wLdU2ZzJhlszV5ejOU/TinV9VP3ykVmjicitmK7p43CkZFEqKqSg8rJ5CBzU0ZQjwflh/Ujh8MPtYD33HrmJPZX9tlWO/ZIWQxIhribDoRTeJmsR5cOEqFJRedGPw4+7JijIuwO5nH42WYja+p2vVlgMfE5YbG0fKeaosEoijvcUBGP8mhVrkI3RTs+jjoCHTsofww6f4CrXOJ03sjQK1iOsaAqMTiuCvFeGIWIYLJYO1uCmIzLd8CY9ksSsQ0G/kSzQ8S5w1dy+EFaMpQTXbdAGESeVYzQaP97oE+OGZxZ/iSvn4i3LimIMoSZaIuBuN08AomhwNUinUbQBoHQTEGpsas389oQicGQl4EHqOsKWZzdmIy/ucN9Un/E08tH3Bv8fM+oYOE0whSomZmod1sjEt9/j1O0EfEH569/oF4qA372e4id55H2172q+493gVSa//gN5PjNiowiBJ0l09skrroYjzJw46KO4p0kHZxE/pSngjq//mO8JIgvfgowEmkcgKz37X3HQtm0lzozPcxmK8dMnzrzg8RuzQTAztCTvnoODnkDDKGn5EmX60oAeBikwIEC+fEnG+0feNHwXoCRxihiajgaGkpaojX9PAb6rqxg25MqI5Q55ixIntiwq4R7p6+qZcwSiRaYQki0vA5mDdqS0Re5HzmZrC5ht4wgtqHtItALVxL0FPYzXD2He5K4TqJpJ36APUMHg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB5039.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(55016002)(54906003)(4326008)(7696005)(9686003)(316002)(38070700005)(8936002)(33656002)(107886003)(110136005)(71200400001)(2906002)(66446008)(66556008)(66476007)(64756008)(26005)(508600001)(86362001)(83380400001)(76116006)(53546011)(186003)(52536014)(8676002)(38100700002)(6506007)(66946007)(122000001)(5660300002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?2jMVx/Y1n3XpuuubeLnksBKhaEyDcfSbzfFYJGhbQWWpYV2o50aE14VztHVq?= =?us-ascii?Q?M2brXeXur6HL4kUoZKpq/isbw6qxAMvPcHNTSx5DLf7IQiz2X3sKrD5JfEuK?= =?us-ascii?Q?wmV2/GygPVKMoL5Fh0XCrhoBq0DdVyHTDy1D3cxd2c+UpDmXQIC87l1Hl5wb?= =?us-ascii?Q?OkH/1HPn334YDJrqXg37iV8TXFqkn4KHkDCK9+6OXrYnvs3QdZxDjNv43fKh?= =?us-ascii?Q?LG3XIBnwxg5V1jlJNfsZfY3kViEX0hWAxTUFNdCy5yihPj/dypGeb/dC4/q3?= =?us-ascii?Q?oib51wEJbrjl/4GerTWjd/hmkbt0YjjbqX17yFhfNAKhbRLiJ33Nx9HyNW7U?= =?us-ascii?Q?R6tzre1nIF9nNkdrt39InrftIw5H+MY5nGh6zkUKXP4TE32NcvgOgPhPHX8A?= =?us-ascii?Q?mBzEWV0A4VpnRZL4MbguT2bKTnJ/tQQUBlEux3HfXnVe6CkwXOIy2Z8xyv20?= =?us-ascii?Q?GeW+f5iV3XVMuIfsHo+/RqE4umF/RK7u9kJhL6e1LUzarFsaNBK8aYRp4cCQ?= =?us-ascii?Q?YfPFfVkV+kSrrIs6HE9HlhMlZ1f4oF8qa+h0Aq7SaXudRNlaKyV3i4Z1bL6o?= =?us-ascii?Q?3HTyTuX+B6GtZzUBt71GSGZ20BJnWvHb5IEGIhhPtrw9BjqzI1umqwu40J27?= =?us-ascii?Q?qrsErEIVUNMt0pJkBJkD+elqmSDtzqPn42MK9+pgBiVgcxDWqxz8YHFnIjP6?= =?us-ascii?Q?zTbxJlyZJ5bM93ci0tOJLMU88OXdAJmVd920sHnzLaJeqnYCDeJmu6mCynQ6?= =?us-ascii?Q?eLNflidTTmDcB9OqQwfDO5ZwYJpNQlNay+cThf3TU1CY+8fcs5Y73gmLX9B5?= =?us-ascii?Q?WZZiFvOX+jJKDeC/iojpqrMntnLJv0iq+VMKSfVdQsWqJ4wbCAklCSN74BkJ?= =?us-ascii?Q?JzhfpgRrEJU0TsULUurlMeG9ZYW0O4xsE8fl4Kb/+UQ8OxNMQ18bLBaEH6IU?= =?us-ascii?Q?0CZ4JiQBO4sRXgeVjJDE7vAAA/Fkt2EOk4U6FqZFGsmrQ2GgECqrSsDvNyjU?= =?us-ascii?Q?Y0OiD4TacmZqnOxGoCq7xFnTE2XtAc0YCjup/nfoDs7a5KHSDXmRli4Tp4ua?= =?us-ascii?Q?mBae9PxrTiCMg9hhnikgJUjdPw0K7RINovp6zKa20wxEBcEn3auYGQwypsPJ?= =?us-ascii?Q?V6VclM+1jRiH22mddTXjczQbrpUruB/9t+dul0HmKF1gwASyMCXJzVQh00C8?= =?us-ascii?Q?+1qDQv8Bk+9awBtnNmUV4RTzMJqUeU4KA2OHTPqmDLp03IeRWmP5IX/9hINi?= =?us-ascii?Q?8U8AWhPOsOEAT2iLYLPfMhYZiQYIGjds+t3pWE3F2OW5ALaTLTfS2L2tyBCK?= =?us-ascii?Q?c4c=3D?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB5039.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1ad799af-8178-4301-764d-08d98331469f X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Sep 2021 10:09:50.9574 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: AUZWVWokJdav2Wle1LvVxo8gv8p82eeCkJdGHUiBKHxaDeU8PU9DtdCSnvtyOBosclSRXcriOtDgbFphAyRYvg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5342 X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: users-bounces@dpdk.org Hi Anna, > -----Original Message----- > From: Thomas Monjalon > Sent: Wednesday, September 29, 2021 12:54 PM > To: Anna A > Cc: users@dpdk.org; Matan Azrad ; Slava Ovsiienko > > Subject: Re: Using rte_flow to distribute single flow type among multiple= Rx > queues using DPDK in Mellanox ConnectX-5 Ex >=20 > 29/09/2021 07:26, Anna A: > > Hi, > > > > I'm trying to use rte_flow_action_type_rss to distribute packets all > > of the same flow type among multiple Rx queues on a single port. > > Mellanox > > ConnectX-5 Ex and DPDK version 20.05 is used for this purpose. It > > doesn't seem to work and all the packets are sent only to a single queu= e. >=20 > Adding mlx5 maintainers Cc. >=20 > > My queries are : > > 1. What am I missing or doing differently? > > 2. Should I be doing any other configurations in rte_eth_conf or > > rte_eth_rxmode? Can you please try to add? .rxmode.mq_mode =3D ETH_MQ_RX_RSS, in the rte_eth_conf and try again? >=20 > Do you see any error log? > For info, you can change log level with --log-level. > Experiment options with '--log-level help' in recent DPDK. >=20 > > My rte_flow configurations: > > > > struct rte_flow_item pattern[MAX_RTE_FLOW_PATTERN] =3D {}; > > struct rte_flow_action action[MAX_RTE_FLOW_ACTIONS] =3D {}; > > struct rte_flow_attr attr; > > struct rte_flow_item_eth eth; > > struct rte_flow *flow =3D NULL; > > struct rte_flow_error error; > > int ret; > > int no_queues =3D2; > > uint16_t queues[2]; > > struct rte_flow_action_rss rss; > > memset(&error, 0x22, sizeof(error)); > > memset(&attr, 0, sizeof(attr)); > > attr.egress =3D 0; > > attr.ingress =3D 1; > > > > memset(&pattern, 0, sizeof(pattern)); > > memset(&action, 0, sizeof(action)); > > /* setting the eth to pass all packets */ > > pattern[0].type =3D RTE_FLOW_ITEM_TYPE_ETH; > > pattern[0].spec =3D ð > > pattern[1].type =3D RTE_FLOW_ITEM_TYPE_END; > > > > rss.types =3D ETH_RSS_IP; > > rss.level =3D 0; > > rss.func =3D RTE_ETH_HASH_FUNCTION_TOEPLITZ; > > rss.key_len =3D0; > > rss.key =3D NULL; > > rss.queue_num =3D no_queues; > > for (int i=3D 0; i < no_queues; i++){ > > queues[i] =3D i; > > } > > rss.queue =3D queues; > > action[0].type =3D RTE_FLOW_ACTION_TYPE_RSS; > > action[0].conf =3D &rss; > > > > action[1].type =3D RTE_FLOW_ACTION_TYPE_END; > > > > ret =3D rte_flow_validate(portid, &attr, pattern, action, &error); > > if (ret < 0) { > > printf( "Flow validation failed %s\n", error.message); > > return; > > } > > flow =3D rte_flow_create(portid, &attr, pattern, action, &error); > > > > if (flow =3D=3D NULL) > > printf(" Cannot create Flow create"); > > > > And Rx queues configuration: > > for (int j =3D 0; j < no_queues; j++) { > > > > int ret =3D rte_eth_rx_queue_setup(portid, j, nb_rxd, > > rte_eth_dev_socket_id(port_id), > > NULL,mbuf_pool); > > if (ret < 0) { > > printf( "rte_eth_rx_queue_setup:err=3D%d, port=3D%u", ret, > > (unsigned) portid); > > exit(1); > > } > > } > > > > Thanks > > Anna >=20 >=20 BRs, Wisam Jaddo