From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Tue, 10 Apr 2012 07:00:48 +0200 Subject: [U-Boot] [PATCH] FAT: Properly align buffers to allow cache operations In-Reply-To: <201204100036.07124.vapier@gentoo.org> References: <1333953903-26335-1-git-send-email-marex@denx.de> <201204100036.07124.vapier@gentoo.org> Message-ID: <201204100700.48644.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 Best regards, Marek Vasut