]> www.infradead.org Git - users/dwmw2/linux.git/commit
sched: Remove relyance on STRUCT_ALIGNMENT
authorPeter Zijlstra <peterz@infradead.org>
Wed, 21 Oct 2020 13:45:33 +0000 (15:45 +0200)
committerPeter Zijlstra <peterz@infradead.org>
Thu, 29 Oct 2020 10:00:32 +0000 (11:00 +0100)
commit43c31ac0e665d942fcaba83a725a8b1aeeb7adf0
tree44e9276309d8c428388a148ec5ce6c7a212dfecd
parent345a957fcc95630bf5535d7668a59ed983eb49a7
sched: Remove relyance on STRUCT_ALIGNMENT

Florian reported that all of kernel/sched/ is rebuild when
CONFIG_BLK_DEV_INITRD is changed, which, while not a bug is
unexpected. This is due to us including vmlinux.lds.h.

Jakub explained that the problem is that we put the alignment
requirement on the type instead of on a variable. Type alignment is a
minimum, the compiler is free to pick any larger alignment for a
specific instance of the type (eg. the variable).

So force the type alignment on all individual variable definitions and
remove the undesired dependency on vmlinux.lds.h.

Fixes: 85c2ce9104eb ("sched, vmlinux.lds: Increase STRUCT_ALIGNMENT to 64 bytes for GCC-4.9")
Reported-by: Florian Fainelli <f.fainelli@gmail.com>
Suggested-by: Jakub Jelinek <jakub@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
kernel/sched/deadline.c
kernel/sched/fair.c
kernel/sched/idle.c
kernel/sched/rt.c
kernel/sched/sched.h
kernel/sched/stop_task.c