From mboxrd@z Thu Jan 1 00:00:00 1970 From: Neil Horman Subject: Re: [PATCH 1/5] pmdinfogen: fix cross compilation for ARM BE Date: Wed, 13 Dec 2017 07:19:59 -0500 Message-ID: <20171213121959.GA12604@hmswarspite.think-freely.org> References: <1509617335-6354-1-git-send-email-hemant.agrawal@nxp.com> <20171211124032.GA11536@bricha3-MOBL3.ger.corp.intel.com> <20171211185813.GE18284@hmswarspite.think-freely.org> <16de48c2-0ba7-951a-b8bf-3409cead8663@nxp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Bruce Richardson , dev@dpdk.org, ferruh.yigit@intel.com, stable@dpdk.org, Jun Yang To: Hemant Agrawal Return-path: Content-Disposition: inline In-Reply-To: <16de48c2-0ba7-951a-b8bf-3409cead8663@nxp.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Wed, Dec 13, 2017 at 05:22:57PM +0530, Hemant Agrawal wrote: > Hi Neil/Bruce, > > On 12/12/2017 12:28 AM, Neil Horman wrote: > > On Mon, Dec 11, 2017 at 12:40:32PM +0000, Bruce Richardson wrote: > > > On Thu, Nov 02, 2017 at 03:38:51PM +0530, Hemant Agrawal wrote: > > > > cross compiling DPDK for BE mode on ARM results into errors > > > > > > > > "PMDINFO portal/dpaa2_hw_dpio.o.pmd.c No drivers registered" > > > > > > > > Fixes: 98b0fdb0ffc6 ("pmdinfogen: add buildtools and pmdinfogen utility") > > > > Cc: Neil Horman > > > > Cc: stable@dpdk.org > > > > > > > > Signed-off-by: Jun Yang > > > > Signed-off-by: Hemant Agrawal > > > > --- > > > > buildtools/pmdinfogen/pmdinfogen.c | 2 +- > > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > > > > > Comment could be a bit more specific about what the problem is and how > > > changing the hard-coded "32" fixes it. > > > > > > Haven't tested the cross compilation part myself, but this causes no > > > errors for 32-bit or 64-bit builds on my system. So, with some more > > > detail on the specifics of the fix in the commit message: > > > > > > Acked-by: Bruce Richardson > > > > > > > I'm with Bruce. I'd like to know exactly whats going on here. I dont have an > > ARM system handy, so could you please post the errors that you are seeing here? > > Is ADDR_SIZE not defined on BE for ARM or some such? That seems like it should > > be fixed, rather than this change. > > > > Neil > > > > The original code hard codes the conversion for sh_size to 32, which is > incorrect. > > The sh_size can be "Elf32_Word sh_size" for 32 bit and "Elf64_Xword > sh_size" for 64 bit systems. > > This causes the symtab_stop to have reduced size and thus find can fail. > info->symtab_stop = RTE_PTR_ADD(hdr, sechdrs[i].sh_offset + > sechdrs[i].sh_size); > > we fixed it by replacing the hardcoded 32 with ADDR_SIZE is better. > Oh, my bad, you're correct, I thought it was 32 bits for both ABI's Acked-by: Neil Horman