On Fri, 2019-08-30 at 12:43 +0900, Masahiro Yamada wrote: > Commit 9012d011660e ("compiler: allow all arches to enable > CONFIG_OPTIMIZE_INLINING") allowed all architectures to enable > this option. A couple of build errors were reported by randconfig, > but all of them have been ironed out. > > Towards the goal of removing CONFIG_OPTIMIZE_INLINING entirely > (and it will simplify the 'inline' macro in compiler_types.h), > this commit changes it to always-on option. Going forward, the > compiler will always be allowed to not inline functions marked > 'inline'. > > This is not a problem for x86 since it has been long used by > arch/x86/configs/{x86_64,i386}_defconfig. > > I am keeping the config option just in case any problem crops up for > other architectures. > > The code clean-up will be done after confirming this is solid. > > Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> [ Resending as the mail delivery system failed to resolve some the hosts, namely Masahiro's ] [ Adding some ARM people as they might be able to help ] This was found to cause a regression on a Raspberry Pi 2 B built with bcm2835_defconfig which among other things has no SMP support. The relevant logs (edited to remove the noise) are: [ 5.827333] Run /init as init process Loading, please wait... Failed to set SO_PASSCRED: Bad address Failed to bind netlink socket: Bad address Failed to create manager: Bad address Failed to set SO_PASSCRED: Bad address [ 9.021623] systemd[1]: SO_PASSCRED failed: Bad address [!!!!!!] Failed to start up manager. [ 9.079148] systemd[1]: Freezing execution. I looked into it, it turns out that the call to get_user() in sock_setsockopt() is returning -EFAULT. Down the assembly rabbit hole that get_user() is I found-out that it's the macro 'check_uaccess' who's triggering the error. I'm clueless at this point, so I hope you can give me some hints on what's going bad here. Regards, Nicolas
Attachment:
signature.asc
Description: This is a digitally signed message part