From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Packham Date: Mon, 8 Sep 2014 17:18:17 +1200 Subject: [U-Boot] relocation problem on powerpc In-Reply-To: References: Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Mon, Sep 8, 2014 at 4:32 PM, Chris Packham wrote: > Hi All, > > I have come across what I think is a relocation problem for powerpc. > > I've added the following to ArpTimeoutCheck > > + printf("NetArpWaitTimerStart = %ld\n", NetArpWaitTimerStart); > + printf("&NetArpWaitTimerStart = %p\n", &NetArpWaitTimerStart); > + printf("NetArpWaitTry = %d\n", NetArpWaitTry); > + printf("&NetArpWaitTry = %p\n", &NetArpWaitTry); > + printf("NetArpWaitTxPacketSize = %d\n", NetArpWaitTxPacketSize); > + printf("&NetArpWaitTxPacketSize = %p\n", &NetArpWaitTxPacketSize); > > Which yields the following output > > NetArpWaitTimerStart = 0 > &NetArpWaitTimerStart = f00000d0 > NetArpWaitTry = 1 > &NetArpWaitTry = 7ffb0058 > NetArpWaitTxPacketSize = 42 > &NetArpWaitTxPacketSize = 7ffb0078 > > That looks to me like NetArpWaitTimerStart hasn't been relocated for > some reason. Looking at my u-boot.map NetArpWaitTimerStart is the last > item in the .sbss section > > Here's the relevant snippets for the variables I'm displaying > > 0x00000000f0000058 NetArpWaitTry > 0x00000000f0000078 NetArpWaitTxPacketSize > 0x00000000f00000d0 NetArpWaitTimerStart > > The actual problem for me is that ARPs timeout and various network > things fail. Has anyone got any clues as to why this one particular > variable isn't getting relocated. > > Thanks, > Chris > > More info: > I'm building P2041RDB_config > > $ git describe > v2014.10-rc2-15-g2ec8915 > > => version > U-Boot 2014.10-rc2-00015-g2ec8915-dirty (Sep 08 2014 - 16:18:42) > powerpc-e500-linux-gnu-gcc (Gentoo 4.6.3-r1 p1.9, pie-0.5.2) 4.6.3 > GNU ld (GNU Binutils) 2.21 Actually could this be a compiler problem? I tried a different toolchain and got some different results. Any suggestions for diagnosing it?