Message ID | 20180508212600.26954-1-pbhagavatula@caviumnetworks.com (mailing list archive) |
---|---|
State | Accepted, archived |
Delegated to: | Jerin Jacob |
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6CBA17D19; Tue, 8 May 2018 23:26:42 +0200 (CEST) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0049.outbound.protection.outlook.com [104.47.37.49]) by dpdk.org (Postfix) with ESMTP id E22FB7D0E for <dev@dpdk.org>; Tue, 8 May 2018 23:26:39 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=5GQGligx5dz2I+DVB6oOaZqXwx8H388uBrxUuNEkczY=; b=OGuuyU3F3ljyCtoVfpSMPIgU9r7Gcab73v39KP5OANF1weMzt+d1wqjDr7XVCLgZUxfcSG51lVTEmv7UoL/pI9y7Zh1z/4SmKLu/uugWmqb/Eztkn/MJ0LrBQ/waE2bARwCIxkteGj6wtkN0tIqslc+fr7VZivXL9EAfXdCYTfg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Pavan.Bhagavatula@cavium.com; Received: from localhost.localdomain (111.93.218.67) by CY4PR07MB3462.namprd07.prod.outlook.com (2603:10b6:910:75::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Tue, 8 May 2018 21:26:36 +0000 From: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> To: jerin.jacob@caviumnetworks.com, santosh.shukla@caviumnetworks.com, arybchenko@solarflare.com Cc: dev@dpdk.org, Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Date: Wed, 9 May 2018 02:56:00 +0530 Message-Id: <20180508212600.26954-1-pbhagavatula@caviumnetworks.com> X-Mailer: git-send-email 2.17.0 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: BMXPR01CA0002.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:d::12) To CY4PR07MB3462.namprd07.prod.outlook.com (2603:10b6:910:75::15) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(2017052603328)(7153060)(7193020); SRVR:CY4PR07MB3462; X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3462; 3:RbEGeXYdauCTKAODSgSftPawZNDDx02neWISDSbneHPsb3Ag3V4pxwtKO2j6gC2X9YN6QFI36Hxm0FUBR+OJPctNtXfAFTN18Ki1WqqnzB1RtTn5Bg/rbmfwJJ11BdSqkY2vHuUpcX2tVVcYiWAPEP4RBB58ECAXA6pjaU401gqvVmJFZcw7mLkilTmUTJSz/6FndU7vkr2VGYrW5fwkV5UPhQwvruk2DWruE/ZSk2LfIrTk6FyKkBJQCpmYSZhG; 25:7Mo6JJv1tVqwhE5LHv7/jhFmYAh3VYmx1xtiJP/IwogLrrihLnorZ2/KjaRIKBlk0BVpaLUEcI5gadbg3io3zVUhnqSKMyrebIqxflZRlnHDHkF8FZz0rdT+5BN8jXleUhJdEqCY6pcubUrMVXS75lAbspXQUTNKWOm6rYRAj2evdGvtKkBTGiPwC1h8fMCSIQY3HROEr8lfFY5u4XzicvyGkwDK8Ue0zR7Lx+WbWp2pD0ZW82hu64pK4ChaCgBu9SYjKCtFUAd1cuhwfo5UNTu+UX7gtkf7tqY3C41le16lCfEkqyMJVjumGdvcVkqR1druRi+JFgqJ5g7DHdCaNA==; 31:mzvDEtQsb+mpVSSuiwjv6PFxmnVAGMZzaEmrMhcG49+KrRlg1ehjiKqG6Tki+ELRclxi5UbWyq7GL4Ji8vS5LvseFVJqjfEWSQQuuVfJh9wO2tBoPj40r/yc+hkP6W0TcPAwr19injUNkUaUVGzQ3uNf8S2zP3n60XHxXVO8p+hWS+wUbow6jE1hQ8LOLu5DkibYiAfghsKRZ9c+DnIFiOF6+NgNK0QyfU+o9fDlw2s= X-MS-TrafficTypeDiagnostic: CY4PR07MB3462: X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3462; 20:X8WF7sv58j3sQWglBTVfn2FZ3E2vLAWvjC8IWAxMmgVWbtVzWvoJZ7qierM5f5V/AKSQxbfcsSl/+DiHCrkMB3jItw0jw2sqe0XXKZnWHy7HqFA+SsH/g8GQ0G5qLZfC/LRpiFGknzEwLdDy1YibpbrKtwT1zImjuvtsRW9ZcxUDElpJqv+OSMIakNdYS6/R2WXl+tXXzO0QNPb3SF9p+N4B/Mp5g22DdjJGN9aR0vRPuWMRa/s7hHr+3ofGOEoR6yq2SMNEw2GYCFGaDC6k8hIxZabGFZqCJTB0cgDIn3G1QN2Z31ZvNhgpjQC1PB1Is6nBry5O5CsCamyS7G7Lu8NseKRgRMHjGY55cSCi6xDE2jvjN3efhVDCqiIbezXyR/i2DF+BEe4fguQ/ySLIONgm+sZkZmWhsHo5vW85Cj8YLl1C5h+KnnqqkLXFA8rBEJLODghmhgtYDOx+Y6NgQBeShWXNikP+WSj2IadJ2GSp60k6qbwzGpydUYKytJuwngFrUaOzKWBjeGLq3z9QsNLYQeS2BGCiWNQSsOCb8u9HDO50qSNKqxfhhcom+EWW9bfRxEPpMEi3miLv3c2AM8WJCYuTtBc6pMGMzGPBjZ0=; 4:+00FJJWB7mcxoY6DygNi4BnWE62SVUvJGw31o4I4mT7Jzc6YPFvPM3Pv7qrX07VjpUvw5JEBwJP9abLJ3xn9NfR+Rcy6dX5jTpgQvdATwa/i45Qfl3DNkvROlCaej/xj91R3oADxIC1l3t9U4J1ZWw5u501sma8LKBcejbNGASMHUHvy72mtDhlCvdS8JRz3+npbJOrFslY5rM7oy9AYSTKNnqa6Z8Pqz+t6qgaDHpljCMFK0HmEctqbbfzBDmS/2f0UlMfVu+iHXXH2OmVS0w== X-Microsoft-Antispam-PRVS: <CY4PR07MB3462B3C0032282F04B1642A3809A0@CY4PR07MB3462.namprd07.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(3231254)(944501410)(52105095)(149027)(150027)(6041310)(20161123558120)(20161123564045)(20161123562045)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:CY4PR07MB3462; BCL:0; PCL:0; RULEID:; SRVR:CY4PR07MB3462; X-Forefront-PRVS: 0666E15D35 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6069001)(396003)(346002)(39860400002)(39380400002)(366004)(376002)(189003)(199004)(50466002)(2906002)(26005)(5660300001)(486006)(106356001)(305945005)(81166006)(5009440100003)(316002)(105586002)(47776003)(53936002)(16586007)(476003)(16526019)(2616005)(956004)(66066001)(8936002)(97736004)(36756003)(42882007)(1857600001)(6512007)(48376002)(8676002)(50226002)(478600001)(68736007)(1076002)(51416003)(107886003)(6486002)(59450400001)(25786009)(6666003)(6506007)(386003)(6116002)(4326008)(7736002)(3846002)(81156014)(52116002)(72206003)(42262002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR07MB3462; H:localhost.localdomain; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY4PR07MB3462; 23:1KDeaOqiWn8hD6QnEi2SDkx19NIMjYeF3ggvjxDI1?= ushESE0JpgmFfeV7oVeFvxviJXGpiAt7bfHJWhs9qW/fbeH+ZL2BLiY6Fb5RJewTEiLpodk1fVwXqWc1xCpg9GJxBcMJpIy+eyB1Vi50XFR+DdsPfsBCVPaWuOwya0Xm/26G6eAHxmHQrEXLrB7fyhTg2ft4/xxEV9QA5WwcGvk57RbFRDtlVhTq0TXKgXspUW+kxh/ECKWXsCz2YTemilKjgk5NpQ23nwkd4KZGocmwQtSvoVec9xb9308s+KCrpFjmDzOyOinRo1a3HDNO1AgBK6QrrJ9PBlUQZqVJoG+3UzFAN2ttdjXYvOEEfzvwtYM9bLPBVQC/CcUvRmrtJ6c+cK28ZqCJWIXsUzn0l1dQb9eR/wa4Atq5JUYmWc0RHyFp6ZZTH4TpA2uSXT467tLm9YBjr+p4CXtkYsZGlKt4fIOapm3eV4dJcaHAUDSBx9zh+sm7raVqBnbiY93Ni116GMDRZmTlCHzi4JRH9fUQslSbCvnOehrkBTYO+XRbp5pq07MDd31NOTKcSQCcY1xfapps7B1TPO/f7ITB3OzTA7Wd7d/JFUm9XDYAehM455N3onbt4Pu/j4AaIIkr2MibmvvCzv6Zy39kCoXktn25l85qmb33SUlon6hkaTvc8bw2GDxYeRTPkgEODgS9k2EoepIS5Ej39Xo6wUtKlvJ3PB5GHFKG+O+yXGF3aI5MnhvqQJ6p00qVN6zpLF6/J3adu4/NunW+NvKLudJczp1FhbXusDkFB3nyUjNmj3tfDaNp2HwQZXoy/wyzZNVluU2KvqITSqOJ2eb3Jwwizxsam7sij/47+S+GT+AXtaXwnpL9r2x45jGlmUyV6gziQ6z3XR9/sEs0tA6wubF1AUO66rhKpT6ChURjKyZAn0zSEcEEedspX65Dp63DJmzZFrujqZyLk3+jWt87ZfzQz3h/C3mWHiWVm3fxBMQy/CrSgHEMrWyHKGOMj0cPDZxdAc/r5tdwsRUIXPMH25cKxmquSOfsKcYU/1+h9Iv6jGnLcqjL1wBkIvP36vO3OaNwswxXy0lcltz8wW8g0UzJ6fwhg9Zm0o+bXwtXIxv65Ybdb4NkOeIYlHRK0AJxbZdizwE/xen8TeWn9CLnrKFCz5YHRFzuy32z+B9sInsHZR0t/yK9Qs9sqGskKh8AXdrxiih4PqYQiVwq0XCFjHnPOYTAt3rd8N7y3tSpF4zFSnPUAI+dOU9aLW7nTmvojKt3nDf X-Microsoft-Antispam-Message-Info: HsyL/Ia43nhWOlidM2ObSl+cCNC7Rv5NXOa4wx8Pk8NiU7zhW12CluuKIKLOFb9xRv/BCGJ4NEtQ78FBvMSn+dRagLvoR19Yprq3bS04lm9FGnpKwg3GIoJ9Ye7/9VwStiJpJ6NwMdyuKH4OU7WARn4+KA+dp94e6kfKxhacVNS4/ZsqMmfBMIDHSxI/0v4y X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3462; 6:fMXXrHFUYQWo4w0QeAo+ut0NHHZiXLhFmSUtpDTjXcvLmiVkeQcO+zeZP7E49SzVJSO1Wj035175/kFyyCJ84sr2IR3WSAzxdO634ZgvUXVjyhBxKsgmvM0Umr6tv1lMlc3uG+EiNkuOM6N3w7pItK9d0iHhcS7NiXLVjNvlY12r6QMljh2BcnhvNWC+JONCWEMttWv5jO8cEDUKT/3ADHlT6U2mJbYbJpVWm8I8lyZlEtvJ/VueHlvT3j/boBX4QLNi603jHGwWIimZhGTFIHp72GPYum8NGEaVttBLON+vzrMaawRdozxMhq5hj8RQYMdh1JbqStbvYjFBi+ELpkntmHLGT6TVEgUnOnlo3ERr6vbrvInIFOuz7POP7ffHCGp4NLIIFXlTbJUB2shb9yYi8IBIDEEbN2GkKC7BOMPKjeoShzlIdnaNm/zBrtpwZpI5QaAK6ZHnA4YFFBmESQ==; 5:6OJhJoNUKx2ruRoXZQYVHNRVOV3A1R00RMewpGqZHZ/3UVAWELBeOadsrEIxAkzbPwaKVStWEzM+PXl0LA3GaNmo/TjWOcPS2B9DkiTr1+mboEbXIjUO0hUOv05+ZWKciywMGbx521h29muNVb13YmFeW7VxXekDLaYCuwHems8=; 24:ad8jyBPQphzmCkKIw1OPFruh9eBhpzvfiKYA5MiU1irsUp2zm5eW//3o6sKkIT/xoefP/pOUde+jU4hhJBwNIs59oJ9LlEx790wUMSvPrnA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY4PR07MB3462; 7:3VE+idmRtvnwQZUrSRV2bKeu4ahJUF9518rK42LbGUWFDVv4haqt7dQBa+gHQFP2hIxMZYFtotSkHE6pfKk1q7+M0LxHXVBqupBKnysxmEtVMFvH9Pl2mKRlxF/qk727ZAVSEQjNvW0uq20bXHGA7RhtgO07cAuuQL6jIsf6ji04nefnpZDc7U2lXM2bbsxE+guI3PYdarfDApWjrl3HvR7CT6j702iLTWmPx55r/uISX8QznyR0eM5se0qmM9ay X-MS-Office365-Filtering-Correlation-Id: 9789fdc4-2fc2-4f4e-6a13-08d5b52a621b X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 May 2018 21:26:36.1541 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9789fdc4-2fc2-4f4e-6a13-08d5b52a621b X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR07MB3462 Subject: [dpdk-dev] [PATCH] event/octeontx: fix clang 6 linker error X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Checks
Context | Check | Description |
---|---|---|
ci/checkpatch | success | coding style OK |
ci/Intel-compilation | success | Compilation OK |
Commit Message
Pavan Nikhilesh
May 8, 2018, 9:26 p.m. UTC
Clang 6 & 7 fail to naturally align packed structs due to this clang
can't use 8byte atomic primitives and splits them into lesser atomic
primitives. To use lesser atomic primitives we need to link libatomic
(-latomic), instead supply alignment attribute to the compiler.
timvf_worker.c:(.text+0x498): undefined reference to `__atomic_fetch_add_8'
timvf_worker.c:(.text+0x525): undefined reference to `__atomic_store_2'
timvf_worker.c:(.text+0x557): undefined reference to `__atomic_fetch_add_4'
timvf_worker.c:(.text+0x5de): undefined reference to `__atomic_store_2'
Fixes: f874c1eb1519 ("event/octeontx: create and free timer adapter")
Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
---
drivers/event/octeontx/timvf_evdev.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--
2.17.0
Comments
-----Original Message----- > Date: Wed, 9 May 2018 02:56:00 +0530 > From: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> > To: jerin.jacob@caviumnetworks.com, santosh.shukla@caviumnetworks.com, > arybchenko@solarflare.com > Cc: dev@dpdk.org, Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> > Subject: [dpdk-dev] [PATCH] event/octeontx: fix clang 6 linker error > X-Mailer: git-send-email 2.17.0 > > Clang 6 & 7 fail to naturally align packed structs due to this clang > can't use 8byte atomic primitives and splits them into lesser atomic > primitives. To use lesser atomic primitives we need to link libatomic > (-latomic), instead supply alignment attribute to the compiler. > > timvf_worker.c:(.text+0x498): undefined reference to `__atomic_fetch_add_8' > timvf_worker.c:(.text+0x525): undefined reference to `__atomic_store_2' > timvf_worker.c:(.text+0x557): undefined reference to `__atomic_fetch_add_4' > timvf_worker.c:(.text+0x5de): undefined reference to `__atomic_store_2' > > Fixes: f874c1eb1519 ("event/octeontx: create and free timer adapter") > Reported-by: Andrew Rybchenko <arybchenko@solarflare.com> > Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> > --- > drivers/event/octeontx/timvf_evdev.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/event/octeontx/timvf_evdev.h b/drivers/event/octeontx/timvf_evdev.h > index b1b2a8464..1cac1e612 100644 > --- a/drivers/event/octeontx/timvf_evdev.h > +++ b/drivers/event/octeontx/timvf_evdev.h > @@ -145,7 +145,7 @@ struct tim_mem_bucket { > }; > uint64_t current_chunk; > uint64_t pad; > -} __rte_packed; > +} __rte_packed __rte_aligned(8); > > struct tim_mem_entry { > uint64_t w0; > -- > 2.17.0 >
-----Original Message----- > Date: Wed, 9 May 2018 07:23:08 +0530 > From: Jerin Jacob <jerin.jacob@caviumnetworks.com> > To: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> > CC: santosh.shukla@caviumnetworks.com, arybchenko@solarflare.com, > dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH] event/octeontx: fix clang 6 linker error > User-Agent: Mutt/1.9.5 (2018-04-13) > > -----Original Message----- > > Date: Wed, 9 May 2018 02:56:00 +0530 > > From: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> > > To: jerin.jacob@caviumnetworks.com, santosh.shukla@caviumnetworks.com, > > arybchenko@solarflare.com > > Cc: dev@dpdk.org, Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> > > Subject: [dpdk-dev] [PATCH] event/octeontx: fix clang 6 linker error > > X-Mailer: git-send-email 2.17.0 > > > > Clang 6 & 7 fail to naturally align packed structs due to this clang > > can't use 8byte atomic primitives and splits them into lesser atomic > > primitives. To use lesser atomic primitives we need to link libatomic > > (-latomic), instead supply alignment attribute to the compiler. > > > > timvf_worker.c:(.text+0x498): undefined reference to `__atomic_fetch_add_8' > > timvf_worker.c:(.text+0x525): undefined reference to `__atomic_store_2' > > timvf_worker.c:(.text+0x557): undefined reference to `__atomic_fetch_add_4' > > timvf_worker.c:(.text+0x5de): undefined reference to `__atomic_store_2' > > > > Fixes: f874c1eb1519 ("event/octeontx: create and free timer adapter") > > > > Reported-by: Andrew Rybchenko <arybchenko@solarflare.com> > > > Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> > > Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Applied to dpdk-next-eventdev/master. Thanks. > > > > --- > > drivers/event/octeontx/timvf_evdev.h | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/event/octeontx/timvf_evdev.h b/drivers/event/octeontx/timvf_evdev.h > > index b1b2a8464..1cac1e612 100644 > > --- a/drivers/event/octeontx/timvf_evdev.h > > +++ b/drivers/event/octeontx/timvf_evdev.h > > @@ -145,7 +145,7 @@ struct tim_mem_bucket { > > }; > > uint64_t current_chunk; > > uint64_t pad; > > -} __rte_packed; > > +} __rte_packed __rte_aligned(8); > > > > struct tim_mem_entry { > > uint64_t w0; > > -- > > 2.17.0 > >
diff --git a/drivers/event/octeontx/timvf_evdev.h b/drivers/event/octeontx/timvf_evdev.h index b1b2a8464..1cac1e612 100644 --- a/drivers/event/octeontx/timvf_evdev.h +++ b/drivers/event/octeontx/timvf_evdev.h @@ -145,7 +145,7 @@ struct tim_mem_bucket { }; uint64_t current_chunk; uint64_t pad; -} __rte_packed; +} __rte_packed __rte_aligned(8); struct tim_mem_entry { uint64_t w0;