Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp35325312rwd; Mon, 10 Jul 2023 06:03:10 -0700 (PDT) X-Google-Smtp-Source: APBJJlEgRM8PV4cJ2N7x/WmiQcGltbmunDQsJADgLtj5przMJYZofWkHWKuL65o/LhEIspBo/QW5 X-Received: by 2002:a05:6512:6d3:b0:4f8:5ade:44b5 with SMTP id u19-20020a05651206d300b004f85ade44b5mr11497802lff.53.1688994189443; Mon, 10 Jul 2023 06:03:09 -0700 (PDT) Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x14-20020aa7d6ce000000b00514b3d55fe0si6029952edr.289.2023.07.10.06.02.44; Mon, 10 Jul 2023 06:03:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=ejFUHevk; arc=fail (signature failed); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231144AbjGJNBM (ORCPT + 99 others); Mon, 10 Jul 2023 09:01:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47784 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231164AbjGJNBK (ORCPT ); Mon, 10 Jul 2023 09:01:10 -0400 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 70B27120; Mon, 10 Jul 2023 06:01:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688994063; x=1720530063; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=u5MMkapDVg65ALY0CRL3aiLZHEfbtLPHGhbNY7uX68I=; b=ejFUHevk2k3U1XefQ9ZSYhhmtZO12w0ZSG9cZrHvyIogUFyI7iIjOONy FcI+SQBdSrTYYFB19HA5NjtkQpOPWLox0gMGap2hEsvUwUEyGsTpxL7yZ TGavqnxmE9vC1XKAWVrIPdQ7LzD7TgX/5+QEJ4EUDXNqoH29hBC4B0pFB 8a8DIW2kRsJgbNhtr67ZCbVpEMybcrZg7KVDJ/VCEYGXAwB0UUY0YYqDn hveW4SyuNIeb1Y33S4OmeLr8ie4RbJeGIupsHSz5fsApz9tsC8JJWDR/s Z1FQX8bE5FyaUtBkKSQ4MUE+fReFeZFQvsyRalzDKlqc5SF8nSAej5Uuz w==; X-IronPort-AV: E=McAfee;i="6600,9927,10767"; a="363201339" X-IronPort-AV: E=Sophos;i="6.01,194,1684825200"; d="scan'208";a="363201339" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Jul 2023 06:00:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10767"; a="786160921" X-IronPort-AV: E=Sophos;i="6.01,194,1684825200"; d="scan'208";a="786160921" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga008.fm.intel.com with ESMTP; 10 Jul 2023 06:00:57 -0700 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Mon, 10 Jul 2023 06:00:56 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Mon, 10 Jul 2023 06:00:56 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.108) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Mon, 10 Jul 2023 06:00:56 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WkUfZL+votlYqB8MLFsYsaJfIFkU4kpBFRbGoe/zWTRyHGTbC8CH5zyyDoU7B9BtBQVkt/kuTJRnK0LU4siApeUSXO2rFRMqlJmYaq2DZEy8Z94vAlfw3iFLmcFgzLQY1FIHIiNNtDlB9QEbYB5U7l7afzYGHWJd0TV7A7PVgHdojKBGsp1cne8zcwQTDB7wNyM0YiT4TYPo91tBPXjKloqp3SXrSPFmRXkl36R/juFcrrWEGmkZ1qPC03QsuVpQDu7xDM3DsXaVJewJGvXQ9ALVslv/0ZtHrrzkfZ0NiEKR5ZTXT8EmFOUp7sSqzIjIvtpP970rTbZylMI26BLLug== 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=JTcqYxLUM6OEHzFWP8quvOy1mT3fi/7SvblxLPd5o40=; b=Thyl6puxT+r9M4o6hpbFJyuWp396Sdj/CvPW/0rHCKiqITx2gcE9ugOrBUZqFE7+K1cPCXJjcNpjbyOTjT2bQs/L2tV387XGjz54AVPXvxyNCO1SevaEufo14PUCG0fsavKqIgYR8tcPQYp1V6dbDkqJWTnx87EEi6/z9UdxCYdmxQg/iygISK5o5eySCMYXtWiKE7Rxyto57yrT8u8dlqepmCTS/2Qtqi2tcIPWvX2zsTkgR7e0a+N5XloeOCx67aTY1rCO2JniZmHiFKqPHDzxc+pYpA4QjWDJoos8dvUGw5txB1CXvuC+sBR/oAlxwDZYM5XRT200vjj7hUIiKQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from DM6PR11MB3625.namprd11.prod.outlook.com (2603:10b6:5:13a::21) by SN7PR11MB7489.namprd11.prod.outlook.com (2603:10b6:806:342::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6565.30; Mon, 10 Jul 2023 13:00:54 +0000 Received: from DM6PR11MB3625.namprd11.prod.outlook.com ([fe80::1ecd:561c:902a:7130]) by DM6PR11MB3625.namprd11.prod.outlook.com ([fe80::1ecd:561c:902a:7130%4]) with mapi id 15.20.6565.028; Mon, 10 Jul 2023 13:00:54 +0000 Message-ID: Date: Mon, 10 Jul 2023 14:58:51 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH V2 net 2/4] net: fec: recycle pages for transmitted XDP frames Content-Language: en-US To: Wei Fang CC: "davem@davemloft.net" , "edumazet@google.com" , "kuba@kernel.org" , "pabeni@redhat.com" , "ast@kernel.org" , "daniel@iogearbox.net" , "hawk@kernel.org" , "john.fastabend@gmail.com" , Shenwei Wang , Clark Wang , "netdev@vger.kernel.org" , dl-linux-imx , "linux-kernel@vger.kernel.org" , "bpf@vger.kernel.org" References: <20230706081012.2278063-1-wei.fang@nxp.com> <20230706081012.2278063-3-wei.fang@nxp.com> <7df8d76c-e177-b06c-20e4-e6aacbea6471@intel.com> From: Alexander Lobakin In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-ClientProxiedBy: DUZP191CA0040.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f8::18) To DM6PR11MB3625.namprd11.prod.outlook.com (2603:10b6:5:13a::21) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR11MB3625:EE_|SN7PR11MB7489:EE_ X-MS-Office365-Filtering-Correlation-Id: 6f5c909f-e2aa-4c8b-402b-08db8145b197 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uFwmFaJZJMu2D83Qdb44ZDaejIkJrpvsWeFchOOu4bPNr3zJPUFMum0yjAvjHs7zAe7Am5149RQVS0elnSSbhBKIYd5jRnTxzT3STcrJIZBKDvoTVp2hDkv9CBrBHTcb1GzQHwa2ovvIs8sHi2Ggp6ziCwokhn3GivjGxG9gG/PYbvqiJuTvQHYRpJQDbL5mNqqa/NEP+JxMKHdGuPeMmg1XyeTsB8Ah5cn0JMKtr8dKZ69ZmLic4fY0fMknt0dNgFJwXhc8+sqHlB5IRYv6WU6RM0thh+EiDPMKRgN8S6QOBGjUuxRnhYUewzvw8MEy2FJ64JXMoAQRsrDtfuCCjaDwfwmFEiAMAnwbmM9wRyZQXMS6tUsCifbvtD1kKfmVpIL6nxMmAIDveQEJA95BBrIwNmwjXhjTe1jXRBDdz4/HkMb4Nz9zUwRKghBWe6bVyNlw1CJRjm5L4iIvdmCbVRkl559ZTQ7GuzNQTgN1wbsNEogFc741YRoHkPhIROUK7VI/t2bExJFaT+bM97IgwWUIM86I+VZdnyYENB0udFBKiIfNyYevPRPsKxtqSMABhMde4+Mwet/MjqGw+tDhRBufWiKe06s1dTAC5flMHOjKHLfZuY4IGrtI3nw3t/CBD+01WmRz66omjKyj4/jLYg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR11MB3625.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(366004)(39860400002)(136003)(376002)(346002)(396003)(451199021)(31686004)(6666004)(6486002)(478600001)(54906003)(2616005)(83380400001)(36756003)(31696002)(86362001)(2906002)(66946007)(53546011)(6506007)(26005)(186003)(6512007)(38100700002)(82960400001)(8936002)(6916009)(4326008)(66476007)(316002)(41300700001)(66556008)(8676002)(5660300002)(7416002)(45980500001)(43740500002);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZzQ3Rit2T2h1NkpxL0d0bTdJV3FybEVKWVBBckpWV1dQQ0x2by9jckgvZC94?= =?utf-8?B?MVp3T1VQMVVySEs2VFZmSW12ZER5c2YzRXpVQWtaeURibGNuS2UzMUhQeTNr?= =?utf-8?B?YW0xNHMrSmY1VElCNm1NcGRWUmcxY1RNc3NuMzVrU242WkRXdnlIcHQ2L2J3?= =?utf-8?B?ajg2RENmVXRMRnVQekpaV1pZZklkdk01aHlhUWdtemVaOERiYlhaVnloSC9a?= =?utf-8?B?ajEzMUN1S1F4eW5rekVFczZpUjFhcWxBTkJCK0kvdDZGVUs0Ri9YbURISFE3?= =?utf-8?B?VEFyWHhQVjFsbzYzY3FVTERKWXBPVlhtcGhud0U3eTNvQ1crTVN6VU8xYk1V?= =?utf-8?B?enVpdlNXZ1QvNVRlRllQZldPbnVGenZuNE1Gdk1hQzlGVE1zamIyV3h4NUo2?= =?utf-8?B?a1lBdnpDYzJkczduakUvQ1pPNjdSUEc1YlFkZm95bWkyd2pYektpbjBDc1hF?= =?utf-8?B?L3VuSUxJaEJZOXJXMDVOcDNpSXBBb0RnN0xDWjBGZzZOY2NWQkZ1UUVWVXlC?= =?utf-8?B?ZXRuT2FMaWtIUkdDU1ZhVUtkU1J2S2pUT01KTWZDNldMZzhnWmNldjEzT1Ni?= =?utf-8?B?VW5iMkJFZVlzTy9lZjRnU1IzSGxBNThwM2M2NmQxRjRmRXYvdXN5Ny94eit5?= =?utf-8?B?T05ZdkdIQUFiakkrSi9xVUh2eEcrdUlRYXo5aTlrZDVLVjdXbkRlODY0K2Zz?= =?utf-8?B?OE1FNGNlZHZpNk9RbW0yVEt1emJIMzhCVUVadysyZzNBd2Z4cktDckRaaVA0?= =?utf-8?B?ZmplMDd6U1FUSFN1QU1LZWJvem1pM3JHUVZhS2JaUXJRQlFrSWUyam56V0xQ?= =?utf-8?B?V09YeTdVVVF6dTFYUW81K2VHbFZxMXBROGtFelhVdXZ1RENRdmtweGExUi9X?= =?utf-8?B?dEg5anFEZ05IZG5NQTc4WGtGbzh2Vk9hSUZzYk5TYW00ckY2OTh3RHdmNnF2?= =?utf-8?B?c1ZERXRleDF1bW40RlpqNThhOGY1UVVUUVFVV3hoVXh3dGY2S3MvRldCRFcw?= =?utf-8?B?bWJiQXhNZjlwcVhxanFGS3VRbkduVXdPWDN5L3lRRnFLQXlJdGhGTkJEWjY4?= =?utf-8?B?TVdvcGp4WFg5YmVhS2N1UDUwaW1EQXZpM0Z2SVJXRElORCtYblhjU2dPUTJn?= =?utf-8?B?czNEakhDSENoTk5XRmhpNlF0aW02dExNanY4K0NsaXdPaDRRMWFId2ozNWMx?= =?utf-8?B?NnRiZzZVOUlRKy9FUTRqZGx0a1RVaEhndUdpUGE1SGxTallQM2FJL0x3bzU5?= =?utf-8?B?UUtwT1JveEhkbFp4U2VzZWQ2Q3RUUUxpTk9WL2tEY01nalNRWkhMbVhpNXRq?= =?utf-8?B?SEhLRS9POC9aT3NkK3ExbS9CcHR6bzJGakZOZ1NTNzRodXg3ZngycXRvSnlt?= =?utf-8?B?STVyRko4UktwZHN6WjFmR0V5RThOTXhuSkRjQ2ZPVHFJMW15cDlMOEMxbFZr?= =?utf-8?B?c3NPNUtsU2p1MFRoMmd2NUJkOHRDeGhhL2tRenl2cU9pWEdvUFB5MkJvSnFj?= =?utf-8?B?Tmdha2Z4b0p4YThaTDJTREU5THBXWkRvd2FYUXBibTMwbithMmdKQ2t0Syt0?= =?utf-8?B?b0sxSG5ML3plWmVHNDZHNC8rdE11NWJjZ2xXWU91SVBpZTl1SVFCRDRmUkM1?= =?utf-8?B?VzZqS3VpQ2xDRCtSY2trQktMNU5XVzVpaFdBR0I4VTljSCtBb01vWkUvWFMz?= =?utf-8?B?L2c1YU4yS2FYdkQ4eXFmMUhDaFQ1TjJRaitmMUVnWjNDWCtmVUxzRXdOSGpC?= =?utf-8?B?bG1VVkJWQ3FOdHF3UHczSm05QnBETzZvRXM2MHVBdTQxdTB2YnRkSC9YU1lG?= =?utf-8?B?dWxpNlZMT0tMZTVNamZFMHFtVzhSR0NJbkxORFI5bzk2elBIeGVKemFYcFNX?= =?utf-8?B?RmxtUGpDdzB4YTN1QnZTNmcwcUVPSDg4RnllTlYzeW5nT1lXTUVnbGUxK3Zt?= =?utf-8?B?eHgxQzhPVVg3anNRVzU4cFQrb3dSK2s1NWZUZWU2VSsvZzloWjRXUjc2Qngx?= =?utf-8?B?aitERG9tZGdZTUtmT1VxRHdFUEhJRll4NmRCVnU0NDRHaHdNakNTUXAwUnVl?= =?utf-8?B?dktuUk5VcXM3WHpmREhvZ0dNOWFjRTVDY2oydjAwN2pXY3FQNmRLYkIzZjZ3?= =?utf-8?B?dVFjN1Y4RCtIYm5CdmQvTVQvcHlLcnpqaEo1MGtKSVV1UHBvemptTm1veWhw?= =?utf-8?B?eVE9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 6f5c909f-e2aa-4c8b-402b-08db8145b197 X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB3625.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jul 2023 13:00:53.8288 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: a7JYGo8AF2ybVK7wBwgsyr0S8SiVq56RBVfwk75ViXDm0bD9xZA3HXonfWgxKlgvtoT13IfEo6vA42bqLWblWB/8KbU8sCkxjzC3Ui7tGVA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB7489 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wei Fang Date: Fri, 7 Jul 2023 01:54:04 +0000 >> -----Original Message----- >> From: Alexander Lobakin >> Sent: 2023年7月6日 19:59 >> To: Wei Fang >> Cc: davem@davemloft.net; edumazet@google.com; kuba@kernel.org; >> pabeni@redhat.com; ast@kernel.org; daniel@iogearbox.net; >> hawk@kernel.org; john.fastabend@gmail.com; Shenwei Wang >> ; Clark Wang ; >> netdev@vger.kernel.org; dl-linux-imx ; >> linux-kernel@vger.kernel.org; bpf@vger.kernel.org >> Subject: Re: [PATCH V2 net 2/4] net: fec: recycle pages for transmitted XDP >> frames >> >> From: Wei Fang >> Date: Thu, 6 Jul 2023 16:10:10 +0800 >> >>> From: Wei Fang >>> >>> Once the XDP frames have been successfully transmitted through the >>> ndo_xdp_xmit() interface, it's the driver responsibility to free the >>> frames so that the page_pool can recycle the pages and reuse them. >>> However, this action is not implemented in the fec driver. >>> This leads to a user-visible problem that the console will print the >>> following warning log. >> >> [...] >> >>> + if (txq->tx_buf[i].xdp) { >>> + xdp_return_frame(txq->tx_buf[i].xdp); >>> + txq->tx_buf[i].xdp = NULL; >>> + } >>> + >>> + /* restore default tx buffer type: FEC_TXBUF_T_SKB */ >>> + txq->tx_buf[i].type = FEC_TXBUF_T_SKB; >> >> Here and in the related places below: maybe set ::type dynamically when >> sending to either SKB or XDP instead of setting it only for XDP and then >> restoring each time? > I also considered this method. but when the skb has frags or needs to be TSO, > only the last tx_buf of the skb needs to store the skb pointer, but all the tx_buf > of the skb needs to set the type explicitly, I think it is a bit mess and not concise. > So I restore the type to default when recycle the BDs. Anyway, it;s just a difference > in implement, if you guys insist it's better to set the type explicitly, I will modify > the patch. Thanks! Just more of personal preference, no problems. Moreover, your explanation makes sense to me. >> >>> } >>> + >>> bdp->cbd_bufaddr = cpu_to_fec32(0); >>> bdp = fec_enet_get_nextdesc(bdp, &txq->bd); >>> } >> [...] >> >> Thanks, >> Olek Thanks, Olek