[elrepo] bcc-tools broken with kernel-ml on centos 7
Dave Chiluk
dchiluk at indeed.com
Mon Dec 14 23:14:39 EST 2020
It appears as if upgrading to the kernel-ml on centos 7 breaks the
bcc-tools that are available in Centos 7. Installing kernel-ml-devel
does not resolve the epbf compile errors.
Does anyone have a quick solution for this? It looks like I need to
replace kernel-headers with kernel-ml-headers, but that leads to rpm
dependency hell, as doing so causes dependency check failures for
glibc iirc.
Thanks,
Dave.
<---------------------------------------->
$ sudo /usr/share/bcc/tools/biosnoop
In file included from <built-in>:3:
In file included from /virtual/include/bcc/helpers.h:38:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/log2.h:12:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bitops.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bits.h:6:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/vdso/bits.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/vdso/const.h:5:
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/uapi/linux/const.h:28:9:
warning: '_BITUL' macro redefined [-Wmacro-redefined]
#define _BITUL(x) (_UL(1) << (x))
^
/usr/include/linux/const.h:24:9: note: previous definition is here
#define _BITUL(x) (_AC(1,UL) << (x))
^
In file included from <built-in>:3:
In file included from /virtual/include/bcc/helpers.h:38:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/log2.h:12:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bitops.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bits.h:6:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/vdso/bits.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/vdso/const.h:5:
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/uapi/linux/const.h:29:9:
warning: '_BITULL' macro redefined [-Wmacro-redefined]
#define _BITULL(x) (_ULL(1) << (x))
^
/usr/include/linux/const.h:25:9: note: previous definition is here
#define _BITULL(x) (_AC(1,ULL) << (x))
^
In file included from <built-in>:3:
In file included from /virtual/include/bcc/helpers.h:38:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/log2.h:12:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bitops.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bits.h:22:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/build_bug.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/compiler.h:232:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/generated/asm/rwonce.h:1:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/asm-generic/rwonce.h:26:
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:16:15:
error: unknown type name 'bool'
static inline bool __kasan_check_read(const volatile void *p, unsigned int size)
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:18:9:
error: use of undeclared identifier 'true'
return true;
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:20:15:
error: unknown type name 'bool'
static inline bool __kasan_check_write(const volatile void *p,
unsigned int size)
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:22:9:
error: use of undeclared identifier 'true'
return true;
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:34:15:
error: unknown type name 'bool'
static inline bool kasan_check_read(const volatile void *p, unsigned int size)
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:36:9:
error: use of undeclared identifier 'true'
return true;
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:38:15:
error: unknown type name 'bool'
static inline bool kasan_check_write(const volatile void *p, unsigned int size)
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kasan-checks.h:40:9:
error: use of undeclared identifier 'true'
return true;
^
In file included from <built-in>:3:
In file included from /virtual/include/bcc/helpers.h:38:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/log2.h:12:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bitops.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bits.h:22:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/build_bug.h:5:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/compiler.h:232:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/generated/asm/rwonce.h:1:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/asm-generic/rwonce.h:27:
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kcsan-checks.h:148:67:
error: unknown type name 'size_t'
static inline void __kcsan_check_access(const volatile void *ptr, size_t size,
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kcsan-checks.h:164:53:
error: unknown type name 'size_t'
kcsan_begin_scoped_access(const volatile void *ptr, size_t size, int type,
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/kcsan-checks.h:184:65:
error: unknown type name 'size_t'
static inline void kcsan_check_access(const volatile void *ptr, size_t size,
^
In file included from <built-in>:3:
In file included from /virtual/include/bcc/helpers.h:38:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/log2.h:12:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bitops.h:29:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/bitops.h:17:
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/alternative.h:59:2:
error: unknown type name 's32'
s32 instr_offset; /* original instruction */
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/alternative.h:60:2:
error: unknown type name 's32'
s32 repl_offset; /* offset to replacement instruction */
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/alternative.h:61:2:
error: unknown type name 'u16'
u16 cpuid; /* cpuid bit set for replacement */
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/alternative.h:62:2:
error: unknown type name 'u8'
u8 instrlen; /* length of original instruction */
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/alternative.h:63:2:
error: unknown type name 'u8'
u8 replacementlen; /* length of new instruction */
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/alternative.h:64:2:
error: unknown type name 'u8'
u8 padlen; /* length of build-time padding */
^
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/alternative.h:85:8:
error: unknown type name 'bool'
extern bool skip_smp_alternatives;
^
In file included from <built-in>:3:
In file included from /virtual/include/bcc/helpers.h:38:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/log2.h:12:
In file included from
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/include/linux/bitops.h:29:
/lib/modules/5.9.9-1.el7.elrepo.x86_64/build/arch/x86/include/asm/bitops.h:26:3:
error: "Unexpected BITS_PER_LONG"
# error "Unexpected BITS_PER_LONG"
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
2 warnings and 20 errors generated.
Traceback (most recent call last):
File "/usr/share/bcc/tools/biosnoop", line 157, in <module>
b = BPF(text=bpf_text)
File "/usr/lib/python2.7/site-packages/bcc/__init__.py", line 325, in __init__
raise Exception("Failed to compile BPF text")
Exception: Failed to compile BPF text
<---------------------------------------------------------------->
More information about the elrepo
mailing list