2017-08-15 20 views
1

私はubuntu OSを持っており、gcovをインストールしました。 ユーザー空間にある私のCプログラムにgcovを使用することができました。希望の結果が得られました。 私の.koファイル(カーネルスペース)にgcovを使用するときにエラーが発生します。 私はグーグルで、以下のリンクから、私はCONFIG_DEBUG_FS、CONFIG_GCOV_KERNEL、CONFIG_GCOV_FORMAT_AUTODETECT、CONFIG_GCOV_PROFILE_ALLを有効にして、自分のカーネル全体を再コンパイルする必要があることを発見しました。カーネル全体を再コンパイルせずにカーネルモジュールにgcovを使用できますか?

http://techvolve.blogspot.in/2014/03/how-to-gcovlcov-for-linux-kernel-modules.html

私はカーネルを再コンパイルすることなく、私のカーネルローダブルモジュールのgcovのを統合するために、他の方法を持っていますか? さらに詳しい情報が必要な場合は、私にお知らせください。私はそれを更新します。 ありがとう

答えて

0

Linuxカーネルコアのサポートがなければ、カーネルモジュールからカバレッジを収集することはできません。したがって、現在のカーネルにこのようなサポートがない場合は、それを再コンパイルする必要があります。


CONFIG_GCOV_PROFILE_ALLしかし他の設定オプションが必要とされ、カーネルモジュールからの報道には必要ありません。

  • CONFIG_GCOV_KERNELが - 、カーネル空間でカバレッジカウンターを有効に

  • CONFIG_DEBUG_FS - これらのカウンタをユーザ空間に抽出する唯一の方法であるdebugfsファイルシステムを有効にします。

  • CONFIG_GCOV_FORMAT_AUTODETECT - 収集したカバレッジの形式を説明します(自動検出ではなく特定の形式を選択する構成オプションを選択することがあります)。

+0

ありがとうございます@Tsyvarev。 –

関連する問題