network-programmingnic

What is the meaning of "[fixed]" string in the output of the 'ethtool' command?


I run ethtool to query the offload features of a NIC using the "ethtool -k" command, and the output is something as follows:

ethtool -k eth0

scatter-gather: on
tx-scatter-gather: on
tx-scatter-gather-fraglist: off **[fixed]**

What is the meaning of "[fixed]"?


Solution

  • Those are the parameters that can’t be changed; they are "fixed".

    Here is an example. Let's take this output of ethtool:

    large-receive-offload: off [fixed]
    rx-vlan-offload: on
    tx-vlan-offload: on
    

    If I want to change rx-vlan-offload, I would do:

    sudo ethtool -K eth0 rxvlan off
    

    Output:

    Actual changes:
    tcp-segmentation-offload: on
        tx-tcp-segmentation: on
        tx-tcp6-segmentation: on
    rx-vlan-offload: off
    

    The result will be:

    sudo ethtool -k eth0 | grep rx-vlan
    

    Output

    rx-vlan-offload: **off**
    rx-vlan-filter: off [fixed]
    rx-vlan-stag-hw-parse: off [fixed]
    rx-vlan-stag-filter: off [fixed]
    

    Now, let's try to modify a "fixed" parameter like "large-receive-offload":

    sudo ethtool -K eth0 lro on
    

    Output:

    Cannot change large-receive-offload
    Could not change any device features