From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 74D50A00E6 for ; Tue, 16 Apr 2019 16:38:09 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 650BC1B4D0; Tue, 16 Apr 2019 16:38:09 +0200 (CEST) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 3F9D71B4D3 for ; Tue, 16 Apr 2019 16:38:07 +0200 (CEST) Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id A5B0D81E1B; Tue, 16 Apr 2019 14:38:06 +0000 (UTC) Received: from rh.redhat.com (ovpn-117-214.ams2.redhat.com [10.36.117.214]) by smtp.corp.redhat.com (Postfix) with ESMTP id 94CCC1001E92; Tue, 16 Apr 2019 14:38:05 +0000 (UTC) From: Kevin Traynor To: Pavel Belous Cc: Igor Russkikh , dpdk stable Date: Tue, 16 Apr 2019 15:36:41 +0100 Message-Id: <20190416143719.21601-23-ktraynor@redhat.com> In-Reply-To: <20190416143719.21601-1-ktraynor@redhat.com> References: <20190416143719.21601-1-ktraynor@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Tue, 16 Apr 2019 14:38:06 +0000 (UTC) Subject: [dpdk-stable] patch 'net/atlantic: fix EEPROM get for small and uneven lengths' has been queued to LTS release 18.11.2 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 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 Sender: "stable" Hi, FYI, your patch has been queued to LTS release 18.11.2 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 04/24/19. 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. Thanks. Kevin Traynor --- >From b5e5bd079a0408e5eb5b11bc70cd9d567235bca9 Mon Sep 17 00:00:00 2001 From: Pavel Belous Date: Tue, 12 Mar 2019 15:25:01 +0000 Subject: [PATCH] net/atlantic: fix EEPROM get for small and uneven lengths [ upstream commit d940a707858981efc376ff9a8552270437fc7272 ] Fixes: ce4e8d418097 ("net/atlantic: implement EEPROM get/set") Signed-off-by: Igor Russkikh Signed-off-by: Pavel Belous --- .../net/atlantic/hw_atl/hw_atl_utils_fw2x.c | 28 ++++++++++++++++--- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c b/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c index f90ccfe9e..4d850d397 100644 --- a/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c +++ b/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c @@ -530,11 +530,31 @@ static int aq_fw2x_get_eeprom(struct aq_hw_s *self, u32 *data, u32 len) if (result == 0) { - err = hw_atl_utils_fw_downld_dwords(self, + u32 num_dwords = len / sizeof(u32); + u32 bytes_remains = len % sizeof(u32); + + if (num_dwords) { + err = hw_atl_utils_fw_downld_dwords(self, self->rpc_addr + sizeof(u32) * 2, data, - RTE_ALIGN(len, sizeof(u32))); + num_dwords); - if (err < 0) - return err; + if (err < 0) + return err; + } + + if (bytes_remains) { + u32 val = 0; + + err = hw_atl_utils_fw_downld_dwords(self, + self->rpc_addr + sizeof(u32) * 2 + num_dwords, + &val, + sizeof(u32)); + + if (err < 0) + return err; + + rte_memcpy((u8 *)data + len - bytes_remains, + &val, bytes_remains); + } } -- 2.20.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2019-04-16 15:34:26.238872529 +0100 +++ 0023-net-atlantic-fix-EEPROM-get-for-small-and-uneven-len.patch 2019-04-16 15:34:25.167180238 +0100 @@ -1,10 +1,11 @@ -From d940a707858981efc376ff9a8552270437fc7272 Mon Sep 17 00:00:00 2001 +From b5e5bd079a0408e5eb5b11bc70cd9d567235bca9 Mon Sep 17 00:00:00 2001 From: Pavel Belous Date: Tue, 12 Mar 2019 15:25:01 +0000 Subject: [PATCH] net/atlantic: fix EEPROM get for small and uneven lengths +[ upstream commit d940a707858981efc376ff9a8552270437fc7272 ] + Fixes: ce4e8d418097 ("net/atlantic: implement EEPROM get/set") -Cc: stable@dpdk.org Signed-off-by: Igor Russkikh Signed-off-by: Pavel Belous @@ -13,10 +14,10 @@ 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c b/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c -index 1d9190155..f215ceb70 100644 +index f90ccfe9e..4d850d397 100644 --- a/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c +++ b/drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c -@@ -535,11 +535,31 @@ static int aq_fw2x_get_eeprom(struct aq_hw_s *self, int dev_addr, +@@ -530,11 +530,31 @@ static int aq_fw2x_get_eeprom(struct aq_hw_s *self, u32 *data, u32 len) if (result == 0) { - err = hw_atl_utils_fw_downld_dwords(self,