多线程访问平台设备驱动程序

multithread access to platform device driver

我目前正在为 ARM 上的嵌入式 linux 编写平台设备驱动程序。我注意到来自用户 space 的多线程应用程序一次只能访问驱动程序一个线程,并且永远不会同时访问 /dev/* 中对驱动程序的单独文件访问。

以 PCIe 上的 x86 为目标的相同驱动程序(具有修改的 probe())在多线程访问其功能时工作良好。

知道为什么吗?谢谢。

这实际上是用户 space 应用程序中的一个错误。