2016-10-28 2 views
0

dev_err()과 같은 dev_*() 계열의 패밀리가 include/linux/device.h에 프로토 타입으로 제공되지만 그 정의를 찾을 수있는 곳은 없습니다. 나는 lxr.free-electrons와 같은 사이트를 방문했으나 성공하지 못했습니다. 리눅스 커널의 소스 코드에서 사용 된 태그는 심지어 실패했다.dev_err() 함수 정의

dev_err(const struct device *dev, const char *fmt, ...)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_errdefine_dev_printk_level 매크로를 통해 동일한 파일 (drivers/base/core.c)에 구현됩니다.

+0

아마도 snprintf 또는 심지어 snprintf()입니다. – 0andriy

+0

고마워, 지금 고쳐 줘. – Tsyvarev