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 920BCA0C40; Fri, 30 Jul 2021 17:14:57 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 17D1C40040; Fri, 30 Jul 2021 17:14:57 +0200 (CEST) Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) by mails.dpdk.org (Postfix) with ESMTP id 133B24003F for ; Fri, 30 Jul 2021 17:14:56 +0200 (CEST) Received: by mail-wr1-f50.google.com with SMTP id n12so11767280wrr.2 for ; Fri, 30 Jul 2021 08:14:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind.com; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=cIXDfKcvnqL4mXRLXc4x927aNTmdgWmhS9QGvs7n3hE=; b=d+UBo1n5aatSsxL8JmYkSl2njy/3dyQWNCidERnnyb6tBUl2erv8CprUXlU5qF1AQR CLaqbV8cItvuAGgaJFVGIca65aUZ4eTohfgmtfi3JSYNDz41xygRscMOKuFLUjvtmjGS 4U4WeDUnvp24j599Qoh/901tw481yjq6HczooGoI9mSiUa11aXIpa1fEsuTBiwF27N+G Hq+lClHfOyUjnXJ+A1ov3Ba/hsq+3i9j1QhpDuYtJ7VjQUzW+kORjhAx5jW53S8UGSZu 5HbOU8t4ATLYQ/joEJvOTBeCkmwIR3Noem7CSTFy2u5sD4jc2F4FiiOe6NZlpT7nodWz 9I0Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to; bh=cIXDfKcvnqL4mXRLXc4x927aNTmdgWmhS9QGvs7n3hE=; b=uUytR+jqY2ppRS8bhdvCLMwDOdWYjsdmWA1WxrkYv+MfzTpOhkSB/YMT153Vb1ce7C XE4reeKEd+RwXtPcl1+suQOeS0j7xphHUd79sf2N1JDsCfMbLvCc7eKXPLuNiVhMGGey IK80HACIqNCbgDEQMQBhxTC4J8I8qXEw24dcOBjsDLmEB+4tF+FA23u+9OH9dHkFPzo5 sBcSCGBN7iaI9L/F5sArSDcPypCNQKjvu2nW/W8QTlwO98T6QaKNLgVN1IUh+tRDhsZi Fe37YZwQdUyZHwyhwQXaSpudbqyDeATW5d6QeV3Oz6UdKsN5RHhm9ek60k5xXWhPlKfX njIg== X-Gm-Message-State: AOAM533FaSfYmttxBmEjW73Q4bcbA1F1VDsX4cJwQcK/rsZH1HWUfLgl 7+PtN0ALRhBxcIVEbPLbCXtt3g== X-Google-Smtp-Source: ABdhPJz3KWPgc5puk333es5Wf/mv8BVj4IfMer9PwIFXm1BNoADh4kqTHQvg+wcm9OHzQbH3vYGM7Q== X-Received: by 2002:a05:6000:154c:: with SMTP id 12mr3597788wry.393.1627658095730; Fri, 30 Jul 2021 08:14:55 -0700 (PDT) Received: from 6wind.com ([2a01:e0a:5ac:6460:c065:401d:87eb:9b25]) by smtp.gmail.com with ESMTPSA id j14sm2036918wru.58.2021.07.30.08.14.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 30 Jul 2021 08:14:55 -0700 (PDT) Date: Fri, 30 Jul 2021 17:14:54 +0200 From: Olivier Matz To: Thomas Monjalon Cc: Morten =?iso-8859-1?Q?Br=F8rup?= , Ali Alnubani , David Marchand , Alexander Kozyrev , Slava Ovsiienko , dev@dpdk.org, Ferruh Yigit , zhaoyan.chen@intel.com, Andrew Rybchenko , "Ananyev, Konstantin" , ajitkhaparde@gmail.com, dpdk stable , Ajit Khaparde Message-ID: References: <20201104170007.8026-1-olivier.matz@6wind.com> <98CBD80474FA8B44BF855DF32C47DC35C61945@smartserver.smartshare.dk> <2065212.rItNS1eAF1@thomas> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <2065212.rItNS1eAF1@thomas> Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH v4] mbuf: fix reset on mbuf free 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 Sender: "dev" Hi, On Fri, Jul 30, 2021 at 04:54:05PM +0200, Thomas Monjalon wrote: > 30/07/2021 16:35, Morten Brørup: > > > From: Olivier Matz [mailto:olivier.matz@6wind.com] > > > Sent: Friday, 30 July 2021 14.37 > > > > > > Hi Thomas, > > > > > > On Sat, Jul 24, 2021 at 10:47:34AM +0200, Thomas Monjalon wrote: > > > > What's the follow-up for this patch? > > > > > > Unfortunatly, I still don't have the time to work on this topic yet. > > > > > > In my initial tests, in our lab, I didn't notice any performance > > > regression, but Ali has seen an impact (0.5M PPS, but I don't know how > > > much in percent). > > > > > > > > > > 19/01/2021 15:04, Slava Ovsiienko: > > > > > Hi, All > > > > > > > > > > Could we postpose this patch at least to rc2? We would like to > > > conduct more investigations? > > > > > > > > > > With best regards, Slava > > > > > > > > > > From: Olivier Matz > > > > > > On Mon, Jan 18, 2021 at 05:52:32PM +0000, Ali Alnubani wrote: > > > > > > > Hi, > > > > > > > (Sorry had to resend this to some recipients due to mail server > > > problems). > > > > > > > > > > > > > > Just confirming that I can still reproduce the regression with > > > single core and > > > > > > 64B frames on other servers. > > > > > > > > > > > > Many thanks for the feedback. Can you please detail what is the > > > amount of > > > > > > performance loss in percent, and confirm the test case? (I > > > suppose it is > > > > > > testpmd io forward). > > > > > > > > > > > > Unfortunatly, I won't be able to spend a lot of time on this soon > > > (sorry for > > > > > > that). So I see at least these 2 options: > > > > > > > > > > > > - postpone the patch again, until I can find more time to analyze > > > > > > and optimize > > > > > > - apply the patch if the performance loss is acceptable compared > > > to > > > > > > the added value of fixing a bug > > > > > > > > > > [...] > > > > > > Statu quo... > > > > > > Olivier > > > > > > > The decision should be simple: > > > > Does the DPDK project support segmented packets? > > If yes, then apply the patch to fix the bug! > > > > If anyone seriously cares about the regression it introduces, optimization patches are welcome later. We shouldn't wait for it. > > You're right, but the regression is flagged to a 4-years old patch, > that's why I don't consider it as urgent. > > > If the patch is not applied, the documentation must be updated to mention that we are releasing DPDK with a known bug: that segmented packets are handled incorrectly in the scenario described in this patch. > > Yes, would be good to document the known issue, > no matter how old it is. The problem description could be something like this: It is expected that free mbufs have their field m->nb_seg set to 1, so that when it is allocated, the user does not need to set its value. The mbuf free functions are responsible of resetting this field to 1 before returning the mbuf to the pool. When a multi-segment mbuf is freed, the m->nb_seg field is not reset to 1 for the last segment of the chain. On next allocation of this segment, if the field is not explicitly reset by the user, an invalid mbuf can be created, and can cause an undefined behavior. > > Generally, there could be some performance to gain by not supporting segmented packets at all, as a compile time option. But that is a different discussion. > > > > > > -Morten > > >