ethtool 输出中的 [fixed] 从何而来?

Where does the [fixed] in ethtool output come from?

this question 一样,我正在查看 ethtool -k eth0 的输出,我看到有些东西被标记为“[fixed]”:

rx-checksumming: off [fixed]
tx-checksumming: off
    tx-checksum-ipv4: off [fixed]
    tx-checksum-ip-generic: off
    tx-checksum-ipv6: off [fixed]
    tx-checksum-fcoe-crc: off [fixed]
    tx-checksum-sctp: off [fixed]

我知道这意味着它们无法更改,但我无法弄清楚它来自哪里 --- 它是编译到我的内核中的东西吗?

这些功能 on/off 是固定的还是可调的取决于:

  • 首先了解以太网适配器的硬件功能,
  • 然后这个适配器的内核驱动程序 support/use 或者没有这些硬件功能。

示例:许多以太网芯片具有可以减轻(卸载)软件工作的功能,但内核维护人员不愿意使用这些功能。请参阅此处 "why" 关于 TCP 卸载:

http://www.linuxfoundation.org/collaborate/workgroups/networking/toe

无论如何,这不应该让你担心。例如看到:

rx-checksumming: off [fixed]

...并不意味着您没有 rx 校验和,它只是意味着它将由以太网驱动程序代码之外的内核代码完成。