我想在struct net_device_ops上添加一个新的操作,但我对这类事情是个新手,我有点担心从一开始就走错了路。
我添加了一个类似这样的操作:
static const struct net_device_ops wl_netdev_ops =
{
/* The other operations..
.ndo_clear_stats = clear_stats
};从我的观点来看,不清楚的是我如何从用户空间调用,我通常从用户空间获取统计数据
/sys/class/net/.../statistics但是现在我真的不知道我的新操作放在哪里,有人能告诉我一个好的教程或链接,我可以找到简单的例子或教程吗?
提前谢谢你,pedr0
Interesting material
发布于 2012-05-31 18:50:23
你不能直接调用它。您需要以某种方式将其功能导出到用户空间,例如,通过ioctl、netlink、procfs条目等。推荐其中哪一个在很大程度上取决于您到底想要实现什么。
通常也建议不要像这样更改核心内核结构,即使您不打算分发您的更改-有时内核结构成员的顺序或其大小很重要,内核内部也有关于这一点的假设。我很确定还有其他方法可以做你想做的事情。
https://stackoverflow.com/questions/10750808
复制相似问题