寒い夜なのでカーネルモジュールを書きたくなってしまい、自宅のデスクトップPC(下記環境)にてデバッグ用にsystemtapを起動させたところ、下記のようエラーが出てしまった。という個人メモ。
# rpm -qa | grep systemtap
systemtap-sdt-devel-2.9-1.fc22.x86_64
systemtap-2.9-1.fc22.x86_64
systemtap-devel-2.9-1.fc22.x86_64
systemtap-server-2.9-1.fc22.x86_64
systemtap-runtime-2.9-1.fc22.x86_64
systemtap-client-2.9-1.fc22.x86_64
# uname -r
4.2.6-201.fc22.x86_64
# cat /etc/redhat-release
Fedora release 22 (Twenty Two)
# stap pfaults.stp
Using a compile server.
Unable to find a suitable compile server. [man stap-server]
No servers online to select from.
Passes: via server failed. Try again with another '-v' option.
The kernel on your system requires modules to be signed for loading.
The module created by compiling your script must be signed by a systemtap compile-server. [man stap-server]
--use-server was automatically selected in order to request compilation by a compile-server.
一瞬systemtapサーバでのモジュールビルドが必須になってしまったのかもしれないと思ったが、これはsystemtapによって作成されたカーネルモジュールが署名されていないだけだ。
参考リンク
https://sourceware.org/systemtap/wiki/SecureBoot
そこで、とりあえずデスクトップPCのSecure bootをOffにしてからOSを起動することで回避できた。
単なるデバッグにも信用が必要となる世知辛い世の中である()