有一个函数将从两个不同的平台驱动程序调用。我想知道linux的平台驱动核心是否有机会同时调用两个不同设备的probe()?如果是,那么从这两个 probe() 调用的公共(public)函数应该设计为可重入的。
最佳答案
官方规定,内核的每一个函数都必须是可重入的。也许您的函数现在不需要重入,但是谁知道将来会发生什么?
probe
函数调用,更具体地说,AFAIK,它们在开始时的总线枚举期间被序列化。然而,有些人可能会尝试将它们并行化以获得更快的启动。
此外,我们还可以想象一下同时插入两个设备的情况。总线驱动程序可能会在第一次尚未完成时第二次调用 probe
函数。
我的意见是你的探测函数必须是可重入的。
关于linux - linux 中的 Probe() 方法是否需要重入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15288715/