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 E096A41E65; Fri, 10 Mar 2023 15:01:38 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 768A540A81; Fri, 10 Mar 2023 15:01:38 +0100 (CET) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2087.outbound.protection.outlook.com [40.107.237.87]) by mails.dpdk.org (Postfix) with ESMTP id D548940685; Fri, 10 Mar 2023 15:01:36 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=H4uaqa125K8wjgs+brmaidcdyt9ABXemelO7mdxpkaXK/EFPanKA51T8nn8oIX2Ghdy1CbUcQdgiAhuj0lZ9mW4teuvgERzZc9e3jekv1jVfaE+C70/8d+bgwqAaWAAYkyX4MeH/N7SFsKoC2j6EGDj4oTyjYRkXhwzmbJ+/M3Qi9rE2kIZXN8frXjaGJP5JfkwfWRtJeIAAfxMM7R6NfJ8AqbJKO+OjsCeEL9mgcoG8mmiF3QBoi+o+pPkMtncYj+COOQ52ltD33KVEKeKfWNQcM6XsHSWNTeGW8hT0KQNRfBiRj5X8//BpDQqIHMc6JFDlQR9EGg0Kn65gC3tRFg== 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:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=3PxwY0xb5SfRSFYXOqT2Q+LJldGoOp5JUw12rI/nfiQ=; b=R70Ah8tfHO4nu+lxnvmRfdn8vNvVw7Vk93qA1SOddS/p4JK5ah5uMCIN9Qub2czi7Os6h0cXMdpmh757swi4uc4k+nZaRV1XbFNGCYyJ2JYPzciq6xNNyYdxE+1sRps0KHL56Ot/K8ue/saqR0T59Cxy0kJdcRwf20BRnkVqswtme7lth/GYL1KL9ZBaYJADo4lcNmyDwpI2emBeop0nz3iGDupPDzo6u/Puhn6Xm1nKEQ0cpAdNRKjQG3ij0igzLXV6JDiJy4P+1FJe4PdyLOFCJXStvthWwqrxK0XSQfhmDcbEJf8ZffNqQShOEl6vhvHnWus60huuQFI1+EuK5Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3PxwY0xb5SfRSFYXOqT2Q+LJldGoOp5JUw12rI/nfiQ=; b=he1jVZpkEaQM0jAovARgcOlxYb68e9b5hp3PKzQaXFYUXzsgsIqr4afU0O2S/7MDp0mDa8CMcGKYMCtgbCaDiu3fNhkqqs/Z41+QG5dPewX66daGzrLWYVA9bh/Cf62rkV0PP1UfR4tUmxisxTv2c6K+jWd+3nOeSlBXBQqKGMk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) by DM4PR12MB6182.namprd12.prod.outlook.com (2603:10b6:8:a8::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.17; Fri, 10 Mar 2023 14:01:35 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::dd5a:8a5c:f493:9640]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::dd5a:8a5c:f493:9640%5]) with mapi id 15.20.6178.019; Fri, 10 Mar 2023 14:01:34 +0000 Message-ID: <58ba8436-0fd2-9a8e-c191-de7e66bab1cc@amd.com> Date: Fri, 10 Mar 2023 14:01:29 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH 1/1] net/sfc: stop misuse of Rx ingress m-port metadata on EF100 Content-Language: en-US To: Ivan Malov , dev@dpdk.org Cc: Andrew Rybchenko , stable@dpdk.org, Andy Moreton References: <20230309041101.8321-1-ivan.malov@arknetworks.am> From: Ferruh Yigit In-Reply-To: <20230309041101.8321-1-ivan.malov@arknetworks.am> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0378.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18e::23) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|DM4PR12MB6182:EE_ X-MS-Office365-Filtering-Correlation-Id: 060a2b72-66b3-46fa-13a3-08db216ff573 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5cJhaLCxdGb6VB4Shmot41XLgLfk9TO72SLCuGXuZFBLn+vZ/lYJpBS0Hfda6QHPAJZ3w+QiAc08h79fPk6/jDMbkeICJVldWnOurJlTOGlCyr3L2XDwaGt8pFiF3b9MVofWm8XtPKACx8O8/J9BEktI/fe5dAiwqyqG6nzsQN22+bgYdes/DJUmxzqWwz8YGVidR/8dcr0A0fU8uESx8xTjzO4SITIA1LW5SuGnIzMyrOnb3bwWXTnf19ZzgVwaUaotLqFakE32zOhf1zcSCXjPEnZboD3uZaD1KR6wwO0LC5pEzasdKXTD7Yt/ZGw974ayLkphn73D3MIDneQyoAvMENJNP2nc4QRanke8B4oMJz1/1Rf9UU1YCyN4oi7ip7KKdLkUZYIEUnVykAdmAfjRcs7pAwJ8hK3MGuYSopdxjJqcoPanwQKv7FDQcgT/w6cVOG/sBtIslZMjfkOztTEYblExAg3ef0Q2VVYGJMNpu31BTKxrwzCjR7333uVv1b/lBK2v25cMixx4qewv0YOo41/qrMQ/H236VbfOrETTIexPPO7FUv3fetsB64VQs2Pc5p049s6zvdE+dYNZCBlMER5FmGwScl1duXyUzS1as3b0+8U31OboI5L+tJqxaXizDvfN7iMLRP0Jg0U0MY50ShqvSnppYeCU9nXFLx5AMNwlW3WivD0SAGLomMyYq60Y3FEVwInWZ0XNgXKkx+aldCRDVagx/fGjYF/aEuU= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230025)(4636009)(396003)(376002)(136003)(346002)(39860400002)(366004)(451199018)(31686004)(186003)(54906003)(36756003)(38100700002)(86362001)(26005)(31696002)(6506007)(6512007)(53546011)(478600001)(6666004)(2616005)(316002)(44832011)(5660300002)(6486002)(2906002)(4326008)(8936002)(41300700001)(66476007)(66556008)(8676002)(66946007)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UmhKc2tRRXJObzJMd3RDaVNTNmlQNUJNL1QwWVcxb0MzWFBrVU9aVk1NdzA4?= =?utf-8?B?a3ljZE5qa1N1QXFFVmltcDZ2UkJ3emdHL3RxZHphVlFVeTdSWEtYOE9wQlMz?= =?utf-8?B?L0Y2NEtxcDdpeWl2dStMUjMrZkV5Yi85NWhJV3B1VmkrSzNrZ0lBTWEzL0Zx?= =?utf-8?B?eTBOS0hpcEw2MUgzbFg4WlhRa0pqbUZQUVAyZTZKUWZWV29SMXIyMjdIUndl?= =?utf-8?B?cG9vd1NScTJaSjRkR2ZTQ3RuQWRMTEZ4NlN4NHN4eTg4STYzcGZ4Y1lLaU9j?= =?utf-8?B?WnNKSjZnSlRQSzZXaG5GQUpYdnRDQlNaUDM4blcxZmdyQVBuUUZYM1VHZ3ha?= =?utf-8?B?aDlSK0Q0SDNsUGV1eTYraGo4UEdQeUdwaERuQUZUdnMzSERJUDhuTEFLSklR?= =?utf-8?B?ME45c0h0VDdUZ3JiV2lBQmYzcm1sUWlnUW9MZlRwMkF6d25FRVlCM0pkdVJo?= =?utf-8?B?SGdMUEdWdUlkWVZ1R2pXV21MQml1N3R4Nld1NXArTjZRdFNBaHZFM3hLc2tH?= =?utf-8?B?eVhUYkh2WlBpdTV2RUNMNFlHbysyRWNVZEhHT2hjQ2t1RWlrb0NZZkN3ZGo1?= =?utf-8?B?RjduM1lXTnlvZjhrb1ZJL3NOWE43VVl2VlVVNUhhR1hBeE5INDBEYk5VTDh6?= =?utf-8?B?dzdMSEtkOWFlK0hQR1VmRUlmbjRXeUZoYkN4ZVFMMGFkWStTbTd5RWJ2MTlZ?= =?utf-8?B?Vkp6VXVWY3F1dUE1SEp3cXZLNDVlY0lZNHBIU094c1VveCtuMVpFbVNQMUlP?= =?utf-8?B?dE5VbHl1MWE5VjVqUXVZZmlzdzVuS3pkeGhyZ3p3b01UT1J2ZkI3TEd3R2Jl?= =?utf-8?B?TzU3bVJPMkQ1QlEyYk9XSUZBNkhzaEdzbEplR0YxdU9wbHQrakptUFVkbVMx?= =?utf-8?B?ejNEMHlTWVJJTUx6VmdxVlRlR1hQNUx0NzZnalJUNGRSczZhbjBkdERlM0x6?= =?utf-8?B?c0FLRlAyNWRJQW9tWEJBLzFacStvUTA4T21LWjVnYlVuOVYwbjQyVkJBY2NJ?= =?utf-8?B?dElxaVcrTFJGUW5rRXBISEJhOVludzNqVE4yeGtaTXZWR1VWT1VabndrMkFi?= =?utf-8?B?cm5TQ2VTOGtnSkhnV3lFWnFmQUdxSXRIYUtrTDhXVUhFdkxuVStRSXc0ejdM?= =?utf-8?B?TmpPWUtGNDc2YUhySVdZMzZJUjArVFAva3FNQ3ZHYXg3eHJSdFhuYUc3VXE0?= =?utf-8?B?MWs1eHRCcjh5bENDejRYN0JzbXRzZlp2bDdzcDlIcVN2eGptb0VPZkYxVVlO?= =?utf-8?B?NksrQ2JuRUFUbUI3THlvVDBSMllBSW1kNlF0UDljZGUwZEQ2cDM0bEp0WFNn?= =?utf-8?B?aFpJaDZKOGJBaE5haUpkVlFCN2REKzBoRi92bXFsSTR2dmU3WjNVd2t5L0dt?= =?utf-8?B?SWNEOUpYQTBaZWtjMHczZzBEVGhFakc0RWpSTURDYVlBeTF0YUpUcjNZZk0x?= =?utf-8?B?TUxxa0Vka1B1czNSREI3YWFLWStCa3cvUlZQdjhnZEQva3FRdzNnL2hoQkp0?= =?utf-8?B?OGNXaGpkV0V1b0dWdlNjUnRvbi83QklqY09tZnYyMnoxbklzeUtYQ0pqK2NY?= =?utf-8?B?Z2JmSGRreDNFNVhoQ2xEVytaSGhEWEhjUy9BTFg3aktDMUhTOHlFVlp4KzJM?= =?utf-8?B?b1h2RFpYTjZuRkNkdnlBT3g3b01iblloV3NiNEN5VTFucDFGWVJkRHNZWTRt?= =?utf-8?B?TlBSMDFHYnErVmtqMEFvZjlZQWY2NVh0Y2lrdmYxSWt4ZXdZdnhYOG1IcW1F?= =?utf-8?B?ekQ1d0Q0UFNtUERNUWZPSnhRYU1yTE95dXBSU0ZqcFpWMjRnOUhiNWtTQ1V2?= =?utf-8?B?YWR2cWhwakYvZHAvc2g1dFhIOUJnYmg2NFlRS1dFelRkSDVKR09nV2dGVTVZ?= =?utf-8?B?eHJET3VER2gwSFdGTjZ3Q2Q2SlpSdEZrKzQ5aFQ0Vno4VFJLWEtLdDdWcDNG?= =?utf-8?B?T3hzSkdlZWhvelowWVJCTWg0QUV6a1NLYkJtQ05adnE3blFtTFJyRXBqeEtL?= =?utf-8?B?S2lucHFOTEF3WjlxQndjZVBPQ0pxY0ZsQlBOQWQxZ3dUUzZRNWxzOXcyenZS?= =?utf-8?B?anZiakpBRWE3VXQ3TDIwZnR2Qng5TkdBbkJwUFNtQS9CaHNRVUI2KzAwL3Nv?= =?utf-8?Q?j12QRDyCnq3q6NIBO/r/L35TI?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 060a2b72-66b3-46fa-13a3-08db216ff573 X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Mar 2023 14:01:34.8602 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4VyGxp0ovQhyDehjsGt6OoLMqKLRIWB7aymNT5ihaXVLr+7msRgKysBF+WDgQcfe X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6182 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On 3/9/2023 4:11 AM, Ivan Malov wrote: > The driver supports representor functionality. In it, > packets coming from VFs to the dedicated back-end Rx > queue get demultiplexed into front-end Rx queues of > representor ethdevs as per the per-packet metadata > indicating logical HW ingress ports. On transmit, > packets are provided with symmetrical metadata > by front-end Tx queues, and the back-end queue > transforms the data into so-called Tx override > descriptors. These let the packets bypass flow > lookup and go directly to the represented VFs. > > However, in the Rx part, the driver extracts > the said metadata on every HW Rx queue, that > is, not just on the one used by representors > Doing so leads to a buggy behaviour. It is > revealed by operating testpmd as follows: > > dpdk-testpmd -a 0000:c6:00.0 -a 0000:c6:00.1 -- -i > > testpmd> flow create 0 transfer pattern port_representor \ > port_id is 0 / end actions port_representor port_id 1 / end > Flow rule #0 created > > testpmd> set fwd io > testpmd> start tx_first > > testpmd> flow destroy 0 rule 0 > Flow rule #0 destroyed > > testpmd> stop > > ---------------------- Forward statistics for port 0 ----------------- > RX-packets: 19196498 RX-dropped: 0 RX-total: 19196498 > TX-packets: 19196535 TX-dropped: 0 TX-total: 19196535 > ----------------------------------------------------------------------- > > ---------------------- Forward statistics for port 1 ----------------- > RX-packets: 19196503 RX-dropped: 0 RX-total: 19196503 > TX-packets: 19196530 TX-dropped: 0 TX-total: 19196530 > ----------------------------------------------------------------------- > > In this scenario, two physical functions of the adapter > do not have any corresponding "back-to-back" forwarder > on peer host. Packets transmitted from port 0 can only > be forwarded to port 1 by means of a special flow rule. > > The flow rule indeed works, but destroying it does not > stop forwarding. Port statistics carry on incrementing. > > Also, it is apparent that forwarding in the opposite > direction must not have worked in this case as the > flow is meant to target only one of the directions. > > Because of the bug, the first 32 mbufs received > as a result of the flow rule operation have the > said metadata present. In io mode, testpmd does > not tamper with mbufs and passes them directly > to transmit path, so this data remains in them > instructing the PMD to override destinations > of the packets via Tx option descriptors. > > Expected behaviour is as follows: > > ---------------------- Forward statistics for port 0 ----------------- > RX-packets: 0 RX-dropped: 0 RX-total: 0 > TX-packets: 15787496 TX-dropped: 0 TX-total: 15787496 > ----------------------------------------------------------------------- > > ---------------------- Forward statistics for port 1 ----------------- > RX-packets: 15787464 RX-dropped: 0 RX-total: 15787464 > TX-packets: 32 TX-dropped: 0 TX-total: 32 > ----------------------------------------------------------------------- > > These figures show the rule work only for one direction. > Also, removing the flow shall cause forwarding to cease. > > Provided patch fixes the bug accordingly. > > Fixes: d0f981a3efd8 ("net/sfc: handle ingress mport in EF100 Rx prefix") > Cc: stable@dpdk.org > > Signed-off-by: Ivan Malov > Reviewed-by: Andy Moreton Applied to dpdk-next-net/main, thanks.