在Linux驅動中,dev_err()
是一個用于報告錯誤的宏
以下是如何在Linux驅動代碼中使用dev_err()
的示例:
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/device.h>
#include <linux/init.h>
#include <linux/console.h>
static struct device my_device = {
.name = "my_device",
};
dev_err()
:static int __init my_driver_init(void) {
printk(KERN_ERR "my_driver: Failed to register device\n");
return -ENOMEM;
}
在這個例子中,KERN_ERR
是一個預定義的宏,它表示錯誤級別。你也可以使用其他錯誤級別,如KERN_WARNING
(警告)、KERN_INFO
(信息)和KERN_DEBUG
(調試)。
dev_err()
:static void __exit my_driver_exit(void) {
printk(KERN_ERR "my_driver: Unloading device\n");
}
module_init(my_driver_init);
module_exit(my_driver_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Your Name");
MODULE_DESCRIPTION("A simple Linux driver example");
現在,當你加載和卸載驅動時,它將使用dev_err()
宏在控制臺輸出錯誤消息。