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 506D942CBC for ; Thu, 15 Jun 2023 03:33:38 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4AFA642D2C; Thu, 15 Jun 2023 03:33:38 +0200 (CEST) Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) by mails.dpdk.org (Postfix) with ESMTP id 31A2140DDA for ; Thu, 15 Jun 2023 03:33:37 +0200 (CEST) Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-3f81b449357so13295625e9.0 for ; Wed, 14 Jun 2023 18:33:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1686792817; x=1689384817; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Mp+bKF4pGbUiMhJBXVj/AWILitzkKhZm+7lEpbKcf9g=; b=E97Oys1+o7pVVGsnADHm25BZL20Hxlp7jq/mvqCBrFxaInP9piNLFaLzb8LAADlmte 0YWf3ls1GO9S4QvSxicUNHhlfQSYg3jy99LkPi96/KglWs+M7iex1EFmjd/tOvhklgUW 7T8DJT2Q7U+sErBqLpT8BrZSTRxzrRuiVlChx/aNlClbzCoB1eJ5mZY3Doj/aBiRzpuH Ifd9++WU6p1hnflhXJgJyVgoCDLjIVkE/LiS4GtiV92E7EpZIUscBrR2HXH+CHZ7zbL0 8mpn5iWcBQXR0DN7Vsa3C+v2eNTgh1UmP0jg4bh9hJasxNnVOLphfSDAZrhhbR3ejH+G WfvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686792817; x=1689384817; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Mp+bKF4pGbUiMhJBXVj/AWILitzkKhZm+7lEpbKcf9g=; b=gAXs5yF78cKSVKVexYaSr8kFo7V3Rv2LjG1ozLplhU9i5/xHn+GjZ5yOFVaai5eQ8Q jbhg2O/pSzGb2aKfbz7s4S7kpc9wTSzuQOrJJTpm+jryNrzV3s30mvUnFJOf2rc1KhK5 mVn+dF0gKcPqdci9yXUoWPQOCwCnyYhlfR9JhLBVTzZx3oaRAc2SV8i1XPi/Lo1+CSLA 6o0NP4+0EmY8poF/WR6Z2RjHISUMzFTJLsq3xEl8pS2gneJEy74e12DZ04zZ672x0PYu YLJHJLxHH0Xf91FH13LpY1qnrc9jBFeX3GUhM6eB71QJtaK/zBhdigwwGtB5xB7tSF8x RzSA== X-Gm-Message-State: AC+VfDzdJVAIkduGW95KM7WRT1GDc6lQR2n+VCDJw2fRG5gvMbsOKBur 4dIcPQ0rt5qMrRxLg6ksJiM= X-Google-Smtp-Source: ACHHUZ4dlLsG4fwsQIxnuVQIKEd3nspfIvQYYIa1z9UVIowVmP9eQ9q397izwS/OEdrxu7+fnxxGLA== X-Received: by 2002:a05:600c:cb:b0:3f7:6bd9:2819 with SMTP id u11-20020a05600c00cb00b003f76bd92819mr12907612wmm.29.1686792816627; Wed, 14 Jun 2023 18:33:36 -0700 (PDT) Received: from localhost ([137.220.119.58]) by smtp.gmail.com with ESMTPSA id m7-20020a7bca47000000b003f80b96097esm16268979wml.31.2023.06.14.18.33.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jun 2023 18:33:36 -0700 (PDT) From: luca.boccassi@gmail.com To: Leyi Rong Cc: =?UTF-8?q?Morten=20Br=C3=B8rup?= , Bruce Richardson , David Marchand , dpdk stable Subject: patch 'eal/x86: improve multiple of 64 bytes memcpy performance' has been queued to stable release 20.11.9 Date: Thu, 15 Jun 2023 02:32:08 +0100 Message-Id: <20230615013258.1439718-13-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230615013258.1439718-1-luca.boccassi@gmail.com> References: <20230615013258.1439718-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 20.11.9 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 06/17/23. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/bluca/dpdk-stable This queued commit can be viewed at: https://github.com/bluca/dpdk-stable/commit/4154fc959d05dfc4462d9c074432d8ba12525796 Thanks. Luca Boccassi --- >From 4154fc959d05dfc4462d9c074432d8ba12525796 Mon Sep 17 00:00:00 2001 From: Leyi Rong Date: Wed, 29 Mar 2023 17:16:58 +0800 Subject: [PATCH] eal/x86: improve multiple of 64 bytes memcpy performance MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [ upstream commit 2ef17be88e8b26f871cfb0265227341e36f486ea ] In rte_memcpy_aligned(), one redundant round is taken in the 64 bytes block copy loops if the size is a multiple of 64. So, let the catch-up copy the last 64 bytes in this case. Fixes: f5472703c0bd ("eal: optimize aligned memcpy on x86") Suggested-by: Morten Brørup Signed-off-by: Leyi Rong Reviewed-by: Morten Brørup Acked-by: Bruce Richardson Reviewed-by: David Marchand --- lib/librte_eal/x86/include/rte_memcpy.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librte_eal/x86/include/rte_memcpy.h b/lib/librte_eal/x86/include/rte_memcpy.h index d4d7a5cfc8..fd151be708 100644 --- a/lib/librte_eal/x86/include/rte_memcpy.h +++ b/lib/librte_eal/x86/include/rte_memcpy.h @@ -846,7 +846,7 @@ rte_memcpy_aligned(void *dst, const void *src, size_t n) } /* Copy 64 bytes blocks */ - for (; n >= 64; n -= 64) { + for (; n > 64; n -= 64) { rte_mov64((uint8_t *)dst, (const uint8_t *)src); dst = (uint8_t *)dst + 64; src = (const uint8_t *)src + 64; -- 2.39.2 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2023-06-15 01:56:35.431586894 +0100 +++ 0013-eal-x86-improve-multiple-of-64-bytes-memcpy-performa.patch 2023-06-15 01:56:34.519540255 +0100 @@ -1 +1 @@ -From 2ef17be88e8b26f871cfb0265227341e36f486ea Mon Sep 17 00:00:00 2001 +From 4154fc959d05dfc4462d9c074432d8ba12525796 Mon Sep 17 00:00:00 2001 @@ -8,0 +9,2 @@ +[ upstream commit 2ef17be88e8b26f871cfb0265227341e36f486ea ] + @@ -21 +23 @@ - lib/eal/x86/include/rte_memcpy.h | 2 +- + lib/librte_eal/x86/include/rte_memcpy.h | 2 +- @@ -24 +26 @@ -diff --git a/lib/eal/x86/include/rte_memcpy.h b/lib/eal/x86/include/rte_memcpy.h +diff --git a/lib/librte_eal/x86/include/rte_memcpy.h b/lib/librte_eal/x86/include/rte_memcpy.h @@ -26,2 +28,2 @@ ---- a/lib/eal/x86/include/rte_memcpy.h -+++ b/lib/eal/x86/include/rte_memcpy.h +--- a/lib/librte_eal/x86/include/rte_memcpy.h ++++ b/lib/librte_eal/x86/include/rte_memcpy.h