我正在从英特尔读取驱动程序代码
和Realtek
司机。我有两种设备,
目前我正在学习
..。我知道Ethtool可以成为
长话短说,ethtool是一种显示和调整通用NIC/驱动程序参数的方法
(标识,接收和发送队列的数量,接收和发送卸载,您>命名)在用户空间应用程序中
但是如果你看一下这个结构
不是每件事都是清清白白的
下面是Ethtool结构
static const struct ethtool_ops rtl8169_ethtool_ops = {
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
ETHTOOL_COALESCE_MAX_FRAMES,
.get_drvinfo = rtl8169_get_drvinfo,
.get_regs_len = rtl8169_get_regs_len,
.get_link = ethtool_op_get_link,
.get_coalesce = rtl_get_coalesce,
.set_coalesce = rtl_set_coalesce,
.get_regs = rtl8169_get_regs,
.get_wol = rtl8169_get_wol,
.set_wol = rtl8169_set_wol,
.get_strings = rtl8169_get_strings,
.get_sset_count = rtl8169_get_sset_count,
.get_ethtool_stats = rtl8169_get_ethtool_stats,
.get_ts_info = ethtool_op_get_ts_info,
.nway_reset = phy_ethtool_nway_reset,
.get_eee = rtl8169_get_eee,
.set_eee = rtl8169_set_eee,
.get_link_ksettings = phy_ethtool_get_link_ksettings,
.set_link_ksettings = phy_ethtool_set_link_ksettings,
};我不明白的是这个页面上的一些信息,例如,显示正在做的设置。但是当你看着这个结构的时候,你会发现很多东西都是没有意义的。
https://access.redhat.com/documentation/en-us/red
_
帽子
_
企业
_
linux/8/html/配置
_
和
_
管理
_
networking/monitoring-and-tuning-the-rx-ring-buffer
_
配置和管理网络
https://linoxide.com/linux-how-to/ethtool-command-with-examples/
所以我想知道,如果我必须使用ethtool用户空间应用程序来做以下这些事情,会发生什么。那么哪个
函数处理程序this
显示丢弃的数据包数:i表示我拥有的数据包数
在RealTek的r8169驱动程序中。如果我错了,请纠正我,这个信息是由内核堆栈管理的。
增加RX环形缓冲器以降低高丢包率。我找不出struct的哪个成员
处理这个
在最新的MAC和GMAC嵌入式设备中,可以通过'PAUSE‘参数启用全双工的流量控制。
设置双工模式
哪个函数处理程序传输卸载,如分组发送的传输分段卸载
TCP分段卸载。
另外,什么是结构中的ksettings操作
发布于 2021-02-16 16:21:52
与ethtool -h确认哪个命令负责相应的操作
签入ethtool源代码如何处理命令
在内核端检查net/ethtool/
一般提示:基本上没有网络驱动程序实现所有ethtool功能。
https://stackoverflow.com/questions/66141000
复制相似问题