From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom Rini Date: Mon, 12 Jun 2017 18:42:41 -0400 Subject: [U-Boot] ARM: fixed relocation using proper alignment In-Reply-To: References: Message-ID: <20170612224241.GG10782@bill-the-cat> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Wed, May 10, 2017 at 03:41:32PM +0200, Manfred Schlaegl wrote: > Using u-boot-2017.05 on i.MX6UL we ran into following problem: > Initially U-Boot could be started normally. > If we added one random command in configuration, the newly generated > image hung at startup (last output was DRAM: 256 MiB). > > We tracked this down to a data abort within relocation (relocated_code). > > relocated_code in arch/arm/lib/relocate.S copies 8 bytes per loop > iteration until the source pointer is equal to __image_copy_end. > In a good case __image_copy_end was aligned to 8 bytes, so the loop > stopped as suggested, but in an errornous case __image_copy_end was > not aligned to 8 bytes, so the loop ran out of bounds and caused a > data abort exception. > > This patches solves the issue by aligning __image_copy_end to 8 byte > using the linker script related to arm. > > I don't know if it's the correct way to solve this, so some review would > be very appreciated. Applied to u-boot/master, thanks! -- Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: Digital signature URL: