Linux kernel 如何在内核模块中支持udev?

Linux kernel 如何在内核模块中支持udev?,linux-kernel,udev,Linux Kernel,Udev,我正在移植一个linux内核模块。它曾经为自己创建一个设备文件(使用来自kernelspace的系统调用的恶意攻击),但现在我想在udev中这样做。在哪里可以找到关于在内核模块中支持udev的文档 请注意,模块本身不是设备驱动程序。它充当一组驱动程序的多路复用器。因此,注册设备(即pci设备)的默认方式不适合我的任务。您的意思是模块会枚举设备,然后每个设备都需要加载驱动程序 如果是这样,您的模块最好表示为总线驱动程序。请参阅文档/driver model/*中的bus\u register()i

我正在移植一个linux内核模块。它曾经为自己创建一个设备文件(使用来自kernelspace的系统调用的恶意攻击),但现在我想在udev中这样做。在哪里可以找到关于在内核模块中支持udev的文档


请注意,模块本身不是设备驱动程序。它充当一组驱动程序的多路复用器。因此,注册设备(即pci设备)的默认方式不适合我的任务。

您的意思是模块会枚举设备,然后每个设备都需要加载驱动程序

如果是这样,您的模块最好表示为总线驱动程序。请参阅文档/driver model/*中的
bus\u register()
info,尤其是bus.txt。您可以查看其他内核代码(PCI、USB、ACPI)的使用示例

通过使用驱动程序模型API,它应该能够自动处理通过udev公开总线驱动程序和所有连接的设备。

功能允许我在“虚拟”总线中注册设备,并自动发布sysfs中我的角色设备的主要和次要编号