After a kernel update from 5.2 to 5.3.5 my SystemTAP (stap) probes are failing with errors like
/usr/share/systemtap/runtime/map-gen.c: In function ‘hash_si’:
/usr/share/systemtap/runtime/map-gen.c:114:28: error: this statement may fall through [-Werror=implicit-fallthrough=]
114 | case 3: k1 ^= tail[2] << 16; \
| ~~~^~~~~~~~~~~~~~~~
/usr/share/systemtap/runtime/map-gen.c:131:19: note: in expansion of macro ‘MURMUR_STRING’
131 | #define KEY1_HASH MURMUR_STRING(key1)
| ^~~~~~~~~~~~~
/usr/share/systemtap/runtime/map-gen.c:664:9: note: in expansion of macro ‘KEY1_HASH’
664 | KEY1_HASH;
| ^~~~~~~~~
/usr/share/systemtap/runtime/map-gen.c:115:17: note: here
115 | case 2: k1 ^= tail[1] << 8; \
| ^~~~
Why?
Most likely this is due to -Werror=implicit-fallthru
being enabled in the kernel build (which affects external modules as well) since the 5.3 kernel release: https://lwn.net/Articles/794944/ - in other words, the systemtap upstream needs to some work to properly support 5.3.
Presumably the other -Wimplicit-fallthru
fixes you linked were all for the userspace parts of systemtap which are compiled with different compiler settings (old kernel versions have most likely had -Wimplicit-fallthru
disabled in the build).