[ammarfaizi2-block:tglx/devel/depthtracking 9/59] arch/x86/include/asm/linkage.h:20:3: error: #error Unsupported function alignment

kernel test robot
2022-08-07T00:56:24Z

tree: https://github.com/ammarfaizi2/linux-block tglx/devel/depthtracking
head: b518e558c49324fa002255761d2a7324ba31f7b5
commit: 63ca4d9b1d429d6cc9c1a99c81f73eaf88eadbb3 [9/59] x86/asm: Ensure proper function alignment
config: um-i386_defconfig (https://download.01.org/0day-ci/archive/20220807/202208070826.3lDtoagS-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
reproduce (this is a W=1 build):
# https://github.com/ammarfaizi2/linux-block/commit/63ca4d9b1d429d6cc9c1a99c81f73eaf88eadbb3
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block tglx/devel/depthtracking
git checkout 63ca4d9b1d429d6cc9c1a99c81f73eaf88eadbb3
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=um SUBARCH=i386 prepare

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

arch/x86/um/user-offsets.c:17:6: warning: no previous prototype for 'foo' [-Wmissing-prototypes]
17 | void foo(void)
| ^~~
In file included from include/linux/linkage.h:8,
from include/linux/printk.h:8,
from include/asm-generic/bug.h:22,
from ./arch/um/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/page-flags.h:10,
from kernel/bounds.c:10:
arch/x86/include/asm/linkage.h:15:5: warning: "CONFIG_FUNCTION_ALIGNMENT" is not defined, evaluates to 0 [-Wundef]
15 | #if CONFIG_FUNCTION_ALIGNMENT == 8
| ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/linkage.h:17:7: warning: "CONFIG_FUNCTION_ALIGNMENT" is not defined, evaluates to 0 [-Wundef]
17 | #elif CONFIG_FUNCTION_ALIGNMENT == 16
| ^~~~~~~~~~~~~~~~~~~~~~~~~
>> arch/x86/include/asm/linkage.h:20:3: error: #error Unsupported function alignment
20 | # error Unsupported function alignment
| ^~~~~
In file included from include/linux/printk.h:8,
from include/asm-generic/bug.h:22,
from ./arch/um/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/page-flags.h:10,
from kernel/bounds.c:10:
>> include/linux/linkage.h:73: warning: "__ALIGN_STR" redefined
73 | #define __ALIGN_STR ".align 4,0x90"
|
In file included from include/linux/linkage.h:8,
from include/linux/printk.h:8,
from include/asm-generic/bug.h:22,
from ./arch/um/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/page-flags.h:10,
from kernel/bounds.c:10:
arch/x86/include/asm/linkage.h:23: note: this is the location of the previous definition
23 | #define __ALIGN_STR __stringify(__ALIGN)
|
make[2]: *** [scripts/Makefile.build:117: kernel/bounds.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1200: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:219: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.

vim +20 arch/x86/include/asm/linkage.h

14
15 #if CONFIG_FUNCTION_ALIGNMENT == 8
16 #define __ALIGN .p2align 3, 0x90;
17 #elif CONFIG_FUNCTION_ALIGNMENT == 16
18 #define __ALIGN .p2align 4, 0x90;
19 #else
> 20 # error Unsupported function alignment
21 #endif
22

--
0-DAY CI Kernel Test Service