[Letux-kernel] v5.9-rc1 compile issue

H. Nikolaus Schaller hns at goldelico.com
Tue Aug 18 09:11:05 CEST 2020


> Am 17.08.2020 um 23:24 schrieb David Shah <dave at ds0.me>:
> 
> I'm pretty sure these are supposed to come from include/linux/types.h (via the
> files this includes)

Well it only includes uapi/linux/types.h

> in this context.
> 
> Running gcc -H

thats nice. I didn't know about this gcc option after using it for 20 years...

> on the problematic header (on upstream 5.9) gets the following
> include graph:
> 
> . ./include/linux/bits.h
> .. ./include/linux/const.h
> ... ./include/vdso/const.h
> .... ./include/uapi/linux/const.h
> .. ./include/vdso/bits.h
> .. ./arch/arm/include/generated/uapi/asm/bitsperlong.h
> ... ./include/asm-generic/bitsperlong.h
> .... ./include/uapi/asm-generic/bitsperlong.h
> .. ./include/linux/build_bug.h
> ... ./include/linux/compiler.h
> .... ./include/linux/compiler_types.h
> .... ./arch/arm/include/generated/asm/rwonce.h
> ..... ./include/asm-generic/rwonce.h
> ...... ./include/linux/kasan-checks.h
> ....... ./include/linux/types.h
> ........ ./include/uapi/linux/types.h
> ......... ./arch/arm/include/uapi/asm/types.h
> .......... ./include/asm-generic/int-ll64.h
> ........... ./include/uapi/asm-generic/int-ll64.h
> ............ ./arch/arm/include/generated/uapi/asm/bitsperlong.h
> ......... ./include/uapi/linux/posix_types.h
> .......... ./include/linux/stddef.h
> ........... ./include/uapi/linux/stddef.h
> .......... ./arch/arm/include/uapi/asm/posix_types.h
> ........... ./include/uapi/asm-generic/posix_types.h
> ............ ./arch/arm/include/generated/uapi/asm/bitsperlong.h
> ...... ./include/linux/kcsan-checks.h
> . ./include/uapi/linux/param.h
> .. ./arch/arm/include/generated/uapi/asm/param.h
> ... ./include/asm-generic/param.h
> .... ./include/uapi/asm-generic/param.h
> . ./include/linux/spinlock_types.h
> .. ./arch/arm/include/asm/spinlock_types.h
> .. ./include/linux/lockdep_types.h
> .. ./include/linux/rwlock_types.h

I can't reproduce your output. include paths are missing and there are more compile errors than include file hints.
How does your gcc -H command look like?

> 
> The path here to ./include/linux/types.h does indeed look a bit convoluted (but
> the build works, as expected). Hopefully this helps find the discrepancy with
> Letux.

What I have also observed in the past months is that compiler dependencies are
increasing...

BR and thanks,
Nikolaus



More information about the Letux-kernel mailing list