On Mon, Oct 29, 2012 at 11:03 AM, David Miller <da...@davemloft.net> wrote: > From: Ian Lance Taylor <i...@google.com> > Date: Mon, 29 Oct 2012 08:43:42 -0700 > >> This patch should fix it. Bootstrapped and ran libbacktrace testsuite >> on x86_64-unknown-linux-gnu. Committed to mainline. > > I can tell just by looking at your patch that it doesn't fix the > problem. > > It's "vec->base + vec->size" that's not aligned, rather than the > length. All your change does it align the length term. > > You have to align the vec->size term in the pointer computation.
I did. I changed it from vec->base + vec->size. Now it is vec->base + size, where size is the aligned version of vec->size. I know that vec->base is aligned. Now that size is aligned, I know that vec->base + size is aligned. > First you have to align vec->size to an 8 byte boundary. Then > you have to align the remaining length that results to an 8 > byte boundary as well. Yes, the patch does both of those things. > Can you post a test patch for me this time, instead of just committing > a change which hasn't been tested to fix the problem? I'd very much > appreciate that. Sure, if you can confirm that this patch fails, I will take another look. Ian