[powerpc] Build failure include/linux/compiler_types.h __alloc_size__ (next-20220928)

Sachin Sant sachinp at linux.ibm.com
Thu Sep 29 16:19:28 AEST 2022


Linux-next  6.0.0-rc7-next-20220928 fails to build on powerpc with
following error:

make -j 17 -s && make modules_install && make install
In file included from <command-line>:
./include/linux/percpu.h: In function '__alloc_reserved_percpu':
././include/linux/compiler_types.h:279:30: error: expected declaration specifiers before '__alloc_size__'
 #define __alloc_size(x, ...) __alloc_size__(x, ## __VA_ARGS__) __malloc
                              ^~~~~~~~~~~~~~
./include/linux/percpu.h:120:74: note: in expansion of macro '__alloc_size'
 extern void __percpu *__alloc_reserved_percpu(size_t size, size_t align) __alloc_size(1);
                                                                          ^~~~~~~~~~~~
In file included from ./include/linux/prandom.h:12,
                 from ./include/linux/random.h:108,
                 from ./include/linux/nodemask.h:97,
                 from ./include/linux/list_lru.h:12,
                 from ./include/linux/fs.h:13,
                 from ./include/linux/compat.h:17,
                 from arch/powerpc/kernel/asm-offsets.c:12:
./include/linux/percpu.h:121:13: error: storage class specified for parameter '__is_kernel_percpu_address'
 extern bool __is_kernel_percpu_address(unsigned long addr, unsigned long *can_addr);
             ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/percpu.h:122:13: error: storage class specified for parameter 'is_kernel_percpu_address'
 extern bool is_kernel_percpu_address(unsigned long addr);
             ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from <command-line>:
././include/linux/compiler_types.h:279:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__alloc_size__'
 #define __alloc_size(x, ...) __alloc_size__(x, ## __VA_ARGS__) __malloc
                              ^~~~~~~~~~~~~~
./include/linux/percpu.h:128:80: note: in expansion of macro '__alloc_size'
 extern void __percpu *__alloc_percpu_gfp(size_t size, size_t align, gfp_t gfp) __alloc_size(1);
                                                                                ^~~~~~~~~~~~
././include/linux/compiler_types.h:279:30: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__alloc_size__'
 #define __alloc_size(x, ...) __alloc_size__(x, ## __VA_ARGS__) __malloc
                              ^~~~~~~~~~~~~~
./include/linux/percpu.h:129:65: note: in expansion of macro '__alloc_size'
 extern void __percpu *__alloc_percpu(size_t size, size_t align) __alloc_size(1);
                                                                 ^~~~~~~~~~~~
In file included from ./include/linux/prandom.h:12,
                 from ./include/linux/random.h:108,
                 from ./include/linux/nodemask.h:97,
                 from ./include/linux/list_lru.h:12,
                 from ./include/linux/fs.h:13,
                 from ./include/linux/compat.h:17,
                 from arch/powerpc/kernel/asm-offsets.c:12:
./include/linux/percpu.h:130:13: error: storage class specified for parameter 'free_percpu'
 extern void free_percpu(void __percpu *__pdata);
             ^~~~~~~~~~~
./include/linux/percpu.h:131:20: error: storage class specified for parameter 'per_cpu_ptr_to_phys'
 extern phys_addr_t per_cpu_ptr_to_phys(void *addr);
                    ^~~~~~~~~~~~~~~~~~~
…….
…….

Git bisect points to the following patch:

commit 63caa04ec60583b1dfc8610a59697daf03c158e6
    slab: Remove __malloc attribute from realloc functions

Have attached .config used

Thanks
- Sachin

-------------- next part --------------
A non-text attachment was scrubbed...
Name: config_next
Type: application/octet-stream
Size: 169892 bytes
Desc: not available
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20220929/58072480/attachment-0001.obj>


More information about the Linuxppc-dev mailing list