2016-10-28 25 views
0

dev_err()のようなdev_*()ファミリのファミリは、include/linux/device.hにプロトタイプが与えられていますが、その定義がわかる場所はわかりません。私はlxr.free-electronのようなサイトを訪問しましたが、成功しませんでした。 Linuxカーネルのソースコード内でタグを使用した場合でも失敗しました。dev_err()関数の定義

私が見つけようとしているのは、dev_err(const struct device *dev, const char *fmt, ...)が、const struct device *devをログに出力するための引数としてpciバスなどのデバイス情報を取得する方法です。

答えて

2

このデバイスの説明は、drivers/base/core.cで定義された機能create_syslog_headerで構成されています。この関数は、struct deviceオブジェクトからいくつかのフィールドを抽出し、snprintf()を介して文字列に出力します。

dev_errは、同じファイル(drivers/base/core.c)のdefine_dev_printk_levelマクロによって実装されています。

+0

おそらく 'snprintf'または' snprintf() 'です。 – 0andriy

+0

ありがとうございました。 – Tsyvarev