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 BDBE143AB3; Sat, 10 Feb 2024 01:54:24 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 436A240297; Sat, 10 Feb 2024 01:54:24 +0100 (CET) Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2055.outbound.protection.outlook.com [40.107.101.55]) by mails.dpdk.org (Postfix) with ESMTP id DF12140150 for ; Sat, 10 Feb 2024 01:54:21 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=B3G92aY9ebyZ16pGXjEeGVHXB3SZAXJW7ckP3olu86hr3dFBOeGejf8YILiHipgiQegBTOej7r8W6uy81FsN8d6t4HAy5aOH302/zEpRII4oM4Xua6n3jWBLUme5b78GCogd1qznAIz7FrrMjBjs5uJwegbwbeX85QrLKsVMq+ZLHvCYGd3gPf8l5gotJwU1yb+pnuXVCHq0TLWEcUOgYQPBU8ILjK3BRJCSyuaiCoMCr6W9bcDJCLEu9gv/ZiXFmHaAa6xX8lBi+VJR/fymM2PFKbMJ9i5554valiD+q46Jxy9BFjX670MXq/mAtqwkLoR77Xk7F2+yeUYAXJ+1bQ== 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=fYdLh5ueEEOdjmL5Gh4hwDFzHR6rh4VXRI/TlVjnneo=; b=CpBaBxBdbB7BN/FF/uEooPngOFBW2BsFIFnXZf3JY3EiYxfquW20gb/9vonRbG9A+cfED8tXWrS671ee8Lc4i62HYnPLxs23kSpDaiuKVG+btYneIrhqiarIVZPqIh3BomospwijCOnKmuUZ4oUqoKgvuraOXdywaC3KHHcf8bge5fmWedicJNHHZ8EGlAT26EWt9Habf3JQJ/cBN7v7qR81fwdqV0ytFdaR011IWhzk1gDNlSaqcQiLA2E/zAjOJRTlEPJUI2Waa9mhinKszbw9bH2qBSYFxjP4WXlpTCEP6UmBlzypw3WJjLZJO9xGctYR2EnborT3+A+ca2sJyQ== 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=fYdLh5ueEEOdjmL5Gh4hwDFzHR6rh4VXRI/TlVjnneo=; b=liz/KTWnApWNzaqIeXRro4TDR468kU3gdrkNI5BS1Wu+fsOVzR3EB/ZQvEn1PkyDik4O77gDGha5QTpHDepZ1BWIgeYcAnBzSYkNcE3nNHKiuy+jXh1YBkQKI0mYQ2LRaDQLDb4SfacBScDIiufa3H91DYT/TzNtnwbWZg//YzE= 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 IA1PR12MB8191.namprd12.prod.outlook.com (2603:10b6:208:3f3::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7270.16; Sat, 10 Feb 2024 00:54:18 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::815a:45e6:cf5e:479f]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::815a:45e6:cf5e:479f%4]) with mapi id 15.20.7292.009; Sat, 10 Feb 2024 00:54:18 +0000 Message-ID: Date: Sat, 10 Feb 2024 00:54:15 +0000 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 4/7] net/tap: rewrite the RSS BPF program Content-Language: en-US To: Stephen Hemminger , dev@dpdk.org References: <20240130034925.44869-1-stephen@networkplumber.org> <20240208190827.332368-1-stephen@networkplumber.org> <20240208190827.332368-5-stephen@networkplumber.org> From: Ferruh Yigit Autocrypt: addr=ferruh.yigit@amd.com; keydata= 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 8Zk= In-Reply-To: <20240208190827.332368-5-stephen@networkplumber.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: DUZPR01CA0112.eurprd01.prod.exchangelabs.com (2603:10a6:10:4bb::11) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|IA1PR12MB8191:EE_ X-MS-Office365-Filtering-Correlation-Id: 33e9ddfa-ca82-49d6-b1a3-08dc29d2cfd1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pguY4eUMJAXpEGhRsRF7xHH25XToUlWmGsrPLryRat5WJKbyJY+5M4R/SGLEsnmqLdGkSyK7DLwiPlUzIdA0eTcgnC4D+4XHMHqh7YSpPgXvjS7dHWKSMJPGnN8VFL9VEHLu8t+djD5ou68D+vR2rJ5vUpieTCGaQ51ADxHBIk+zqUuPq3dBIn1WBfC15n/OsLCcp3slK7sxQK+YPObcMQZNu3O1f+gbZmXQN0U3okW+V+zOgCAIUQCnptMwwyrFIUtwTdpazyDTuzTe3ms5CTTZ6ojuuKYw6BYfzFp8lP+9I115L5mkVmW6k/wv8Q+t46KuH2HmuGEM+a2h0D456C2WMCi8IhOjLT2WidklkiYC5JEZKafuzCxfmiLUwiu6WXLqCzWHuPT/hg5rPlVVct5u+8w18Y/fT9qgoX2OsZW4X8PRQ9y+o6AcSzGLO1jPqZoSz0vzn8RHJnb36mJP76v5KJHBV1U5D7/9v56r11nfetu0RU1zvBTHos573Psk5Jg98WeEL61iggUoVwLJg+YdAht8gwcA9Z6i+Ql/NJ91yJ83eSAI3NNqTt7uGzNP 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:(13230031)(39860400002)(136003)(346002)(396003)(376002)(366004)(230273577357003)(230922051799003)(64100799003)(451199024)(1800799012)(186009)(26005)(53546011)(6666004)(83380400001)(44832011)(8936002)(8676002)(316002)(5660300002)(66476007)(66946007)(41300700001)(478600001)(66556008)(86362001)(31696002)(6512007)(36756003)(6506007)(6486002)(2906002)(38100700002)(2616005)(31686004); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UXB5aTdoVXJIY3pQWmNLSkxsdVRXT0xpb2NLOTBjanJhdkhDMzNpT1dIbU5J?= =?utf-8?B?cWZDTm5rNzlwVERPcjM5cHJUQnQyQmNObjZYNzVTWC9CQmh3L2VubVVhZFZz?= =?utf-8?B?Y3RVY1krUCtRalk1R1FFczJpYnVVaTh3U2hZV2QvRUFwc25XL0ErTGQyN3RG?= =?utf-8?B?bFpBZXd2Rm5DeGM0Mm1ubVY0cjZoU3dYK1E4b2V2cUF0VU9XakM0RmdTQ2Ur?= =?utf-8?B?aGM2K00rdVVHb0tHU1NXdGNhcVRhOUphbG5Cd1ZsYW9DTEJCRFhkRXBXbzVZ?= =?utf-8?B?SXNtVDQ4eTBzTWZRc0liS0VmRmd2RmNMSHBIMXhRbXFsMlVoNjQzdTBHUFNz?= =?utf-8?B?RysvSm1oR2ZmejlsTG9pY08wT0tDS3I1aGQ2NkZZVm1oV3dOcjZJUVcxN2N0?= =?utf-8?B?eHRFRm5SNnMzWE9mTlcweXlSZ1JMQWduSExyRnY4N0ZEMnlIdE9tRVZERjVx?= =?utf-8?B?T0dTYjJIZDlJM1lmc1NoSy8vR0xkTFE3NEpOWVdWRkdJNE9DL2ZLTDBnQkx2?= =?utf-8?B?YkR3SVZDdjRPZHkvRmI1aVdSb2xWN0wzdFhKNXYrOW1oUnh5aWZuUWNLWlky?= =?utf-8?B?V0Q4VjR6SUJJSkZkMzV4dUROUjhjWnByU3lQZThBd3VFS2NYcUhZZ1MxN1BW?= =?utf-8?B?OHJlYTc5R1hGWmVEM0RjVnZRNW5kZUZxOHYzSjZyc3hpcUoxbFRDR1B2NXNZ?= =?utf-8?B?SS9XRStLRWRUVVJCVDExL1JzOW1QVm9EeFdXZkM0WlQ2K0JrVUxUejVLMzkx?= =?utf-8?B?YUQ2L0UvazJWenVFRnBsQldCd0haWm1GTlltMVRYQnRJdU9vTDRWTnBXNmRr?= =?utf-8?B?K1VGVzRUaUhnQU9OZ0NwQVdpM3g5cHZYNUNxMlBLOW4zSit5Yjl2Z2FRdFpL?= =?utf-8?B?R1p6S0daYytzVjJlbUQzMGtnNWlwTzhsZ3d1bWFDL1hqZGNBVXM4QzdvdjRS?= =?utf-8?B?WS9UZ0xJSHB2aldtYTFRaEZENjlWTGg5MVZqVlVJb0EzZzYyY24wMGtYcFl0?= =?utf-8?B?Ri9QMWNQa0hwcXhqN2NYUi9ITVdHUm9pcUJoTm5PdUlNVmRyWU51NGpsb0JD?= =?utf-8?B?VkVDUkhRQ0xkMVVlY0UzbjJIY1RSTGNpeG9nQ3ZnWE5ZemFhWURsaHk1WnF2?= =?utf-8?B?Yi80UVBrNy83djNrUGZ5RG1RTmNYL2U1RzNnQklXZWJid2t0VStvSnBORTNG?= =?utf-8?B?cUVnWjhrZFJrRTVrTWRHdUYvRTZreENtdWFCN1RnZ2p4UkQ1cHMwNXBCUjhK?= =?utf-8?B?NUx3MnlWb3MxUmp4T3gyVFd3QzIxZGZ6RExkL2hsTCtQU3JDd2JXSEU0ZG5T?= =?utf-8?B?NzBzbUo0UllOOFUwRmgwZC8yVUhtdkZKSUV2U1lIWDV5MTlieHJkOXNwRW40?= =?utf-8?B?VVJaMzh1ZE9PUThVRFFzeXlCWC9Dcy9LNGZKb1RZVVZFRTNDYzNqYXZjSGFZ?= =?utf-8?B?emxhV2hSMjd0ZEZwRWZONHhhRUNTSGZ1aU1WZTZJUGRCbEF3OGR2ZmZONFdD?= =?utf-8?B?YlNpenM2bVp1UHlCcTMzUWlhWXdHbWkrZmx0NzgwcnZPZHl4eVdIcEdqZ3cw?= =?utf-8?B?bjlicUNLUkdCVlQxd0VDenVuanltQ1VyYkIvYlR5SmFyUllXT0EzVUpvTmRM?= =?utf-8?B?dlFiQlM1TzBuVkhPeFRINnFXdHkwMTIwdjBSTXRMa0ZSY2F5d1NKSnd5RDh5?= =?utf-8?B?aVRQSDh4T3pxOUVwbmo1UHdYa0M5VlNCSDdhQmZrQTdYbUVHRERrSGZQM0cw?= =?utf-8?B?QkFYeUorSVpMc3UvTWh3bXFVNENaY0JhajB4V0pON0JnY0ZkK2Z1QngvdmJ1?= =?utf-8?B?MThmRWJsUDJrcXFVZUc1M3B2WHk3UjlKbGZieEZLRHM1VmhhZ0xQK0FGYmVI?= =?utf-8?B?UDhVRk0zTVpnSzZFN0VETHJrZElpb2t3NWNiaHRUNWpXbGVveVRBL01RZnY5?= =?utf-8?B?OUJoQmRMcDN5UGltaFBaYXlMZklWMHdGa2hiMWdoeDZkQ3dJYzRoNGZTQnMx?= =?utf-8?B?cCttL2JFTjdrTzdmeDVzMDE5Q2JoUTF6b21URWt5OWF0dHY2bjA4NHRyRjh1?= =?utf-8?B?VTR5U3ZrT09EUWh2b3k1dnlCV3UrK1FvcXppQStoOU9SVnVmQXV1M08xckVP?= =?utf-8?Q?VIbjwpFPo/o5Dy8CL8lA9DzpG?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 33e9ddfa-ca82-49d6-b1a3-08dc29d2cfd1 X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Feb 2024 00:54:18.7879 (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: r8ncsstzXpfdtcnpJbtTui1JK8lxrI4i9qSYWLkHb55ggdAnxSR5/h3esVg2Ls19 X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8191 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 2/8/2024 7:05 PM, Stephen Hemminger wrote: > Rewrite the BPF program used to do queue based RSS. > Important changes: > - uses newer BPF map format BTF > - accepts key as parameter rather than constant default > - can do L3 or L4 hashing > - supports IPv4 options > - supports IPv6 extension headers > - restructured for readability > > The usage of BPF is different as well: > - the incoming configuration is looked up based on > class parameters rather than patching the BPF. > - the resulting queue is placed in skb rather > than requiring a second pass through classifier step. > > Note: This version only works with later patch to enable it on > the DPDK driver side. It is submitted as an incremental patch > to allow for easier review. Bisection still works because > the old instruction are still present for now. > > Signed-off-by: Stephen Hemminger <...> > diff --git a/drivers/net/tap/bpf/meson.build b/drivers/net/tap/bpf/meson.build > new file mode 100644 > index 000000000000..f2c03a19fd4d > --- /dev/null > +++ b/drivers/net/tap/bpf/meson.build > @@ -0,0 +1,81 @@ > +# SPDX-License-Identifier: BSD-3-Clause > +# Copyright 2024 Stephen Hemminger > + > +enable_tap_rss = false > + > +libbpf = dependency('libbpf', required: false, method: 'pkg-config') > +if not libbpf.found() > + message('net/tap: no RSS support missing libbpf') > + subdir_done() > +endif > + > +# Debian install this in /usr/sbin which is not in $PATH > +bpftool = find_program('bpftool', '/usr/sbin/bpftool', required: false, version: '>= 5.6.0') > +if not bpftool.found() > + message('net/tap: no RSS support missing bpftool') > + subdir_done() > +endif > I am getting following build error: ' drivers/net/tap/bpf/meson.build:13:10: ERROR: Command `/usr/sbin/bpftool --version` failed with status 2. ' There is a '/usr/sbin/bpftool' file but it is a script and gives following message when run: "WARNING: bpftool not found for kernel 6.5.0-15" This is with "Ubuntu 22.04.3 LTS" Overall thanks for fixing tap BPF support.