On 4/8/21 12:44 PM, Nathan Chancellor wrote: > LLVM 13 adds a new warning, -Walign-mismatch, which has an instance in > blk_mq_complete_send_ipi(): > > block/blk-mq.c:630:39: warning: passing 8-byte aligned argument to > 32-byte aligned parameter 2 of 'smp_call_function_single_async' may > result in an unaligned pointer access [-Walign-mismatch] > smp_call_function_single_async(cpu, &rq->csd); > ^ > 1 warning generated. > > This is expected after commit 4ccafe032005 ("block: unalign > call_single_data in struct request"), which purposefully unaligned the > structure to save space. Given that there is no real alignment > requirement and there have been no reports of issues since that change, > it should be safe to disable the warning for this one translation unit. > > Link: https://github.com/ClangBuiltLinux/linux/issues/1328 > Link: https://lore.kernel.org/r/20210310182307.zzcbi5w5jrmveld4@archlinux-ax161/ > Link: https://lore.kernel.org/r/20210330230249.709221-1-jiancai@xxxxxxxxxx/ > Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx> Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx> > --- > block/Makefile | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/block/Makefile b/block/Makefile > index 8d841f5f986f..d69ac0bd8e61 100644 > --- a/block/Makefile > +++ b/block/Makefile > @@ -10,6 +10,7 @@ obj-$(CONFIG_BLOCK) := bio.o elevator.o blk-core.o blk-sysfs.o \ > blk-mq-sysfs.o blk-mq-cpumap.o blk-mq-sched.o ioctl.o \ > genhd.o ioprio.o badblocks.o partitions/ blk-rq-qos.o > > +CFLAGS_blk-mq.o := $(call cc-disable-warning, align-mismatch) > obj-$(CONFIG_BOUNCE) += bounce.o > obj-$(CONFIG_BLK_SCSI_REQUEST) += scsi_ioctl.o > obj-$(CONFIG_BLK_DEV_BSG) += bsg.o > > base-commit: e49d033bddf5b565044e2abe4241353959bc9120 >