Messages in this thread | | | From | David Laight <> | Subject | RE: [PATCH] blk-mq: fix alignment mismatch. | Date | Wed, 31 Mar 2021 10:38:15 +0000 |
| |
From: Nathan Chancellor > Sent: 31 March 2021 00:30 > > Hi Jian, > > On Tue, Mar 30, 2021 at 04:02:49PM -0700, Jian Cai wrote: > > This fixes the mismatch of alignments between csd and its use as an > > argument to smp_call_function_single_async, which causes build failure > > when -Walign-mismatch in Clang is used. > > > > Link: > > http://crrev.com/c/1193732 > > > > Suggested-by: Guenter Roeck <linux@roeck-us.net> > > Signed-off-by: Jian Cai <jiancai@google.com> > > Thanks for the patch. This is effectively a revert of commit > 4ccafe032005 ("block: unalign call_single_data in struct request"), > which I had brought up in this thread: > > https://lore.kernel.org/r/20210310182307.zzcbi5w5jrmveld4@archlinux-ax161/ > > This is obviously a correct fix, I am not just sure what the impact to > 'struct request' will be.
If the structure is allocated on-stack then aligning it requires the compiler generate the rather horrid 'double stack frame' for the function.
Possibly the unaligned 'struct' should be used by all the code except for a few places where it makes sense to allocate an aligned item?
David
- Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)
| |