编写设备驱动程序

返回错误

除列显数据损坏之类的意外错误外,设备驱动程序通常不会列显消息。相反,驱动程序入口点应返回错误代码,以便应用程序可以确定如何处理错误。可以使用 cmn_err(9F) 函数将消息写入随后会在控制台上显示的系统日志中。

由 cmn_err(9F) 解释的格式字符串说明符与 printf(3C) 格式字符串说明符类似,前者还添加了可列显位字段的格式 %b。格式字符串的第一个字符可能具有特殊意义。在对 cmn_err(9F) 的调用中,还会指定消息 level,用于指示要列显的严重性标签。有关更多详细信息,请参见 cmn_err(9F) 手册页。

级别 CE_PANIC 具有使系统崩溃的负面影响。仅当系统处于不稳定状态以至继续运行将导致更多问题时,才应使用此级别。此外,调试时可以使用此级别来获取系统核心转储。不应使用 CE_PANIC 生成设备驱动程序。