From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Nelson Date: Tue, 10 Apr 2012 08:07:26 -0700 Subject: [U-Boot] [PATCH] FAT: Properly align buffers to allow cache operations In-Reply-To: <201204100700.48644.marex@denx.de> References: <1333953903-26335-1-git-send-email-marex@denx.de> <201204100036.07124.vapier@gentoo.org> <201204100700.48644.marex@denx.de> Message-ID: <4F844CAE.1010502@boundarydevices.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 04/09/2012 10:00 PM, Marek Vasut wrote: > Dear Mike Frysinger, > >> On Monday 09 April 2012 02:45:03 Marek Vasut wrote: >>> @@ -765,9 +767,6 @@ >>> >>> -__attribute__ ((__aligned__ (__alignof__ (dir_entry)))) >>> -__u8 do_fat_read_block[MAX_CLUSTSIZE]; >>> - >>> >>> @@ -788,6 +787,7 @@ do_fat_read (const char *filename, void *buffer, >>> >>> int rootdir_size = 0; >>> int j; >>> >>> + uint8_t do_fat_read_block[MAX_CLUSTSIZE] __attribute__((aligned(32))); >> >> what's going on here exactly ? the old code had the advantage of being in >> the bss and the linker taking care of the alignment. this new code has an >> incorrectly hard-coded "32", and puts a 64KiB array onto the *stack*. > > This will be probably fixed in Eric's patch > Yep. I left it in bss space.