Configuring Device-Related Information from User Space
Different tools can be used to configure or dump the current status of media and hardware parameters for network devices. Among them are:
ifconfig and mii-tool, from the net-tools package
ethtool, from the ethtool package
ip link, from the IPROUTE2 package
You can refer to the associated manpages for details on the syntax of those commands. The section "Ethtool" describes the interface between ethtool and the kernel, and the section "Media Independent Interface (MII)" describes the interface between mii-tool and the kernel. Later chapters return to the ifconfig and ip commands for the L3 configuration.
Figure 8-8 is a high-level overview
of what we will cover in these sections. The figure does not show the locking details.
Suffice it to say that both dev_ethtool and the call to
dev->do_ioctl are protected with the routing
Netlink lock (see the section "Locking").
Ethtool
This section gives an overview of
ethtool along with its relationship to mii-tool and the do_ioctl function pointer in net_device.
The net_device data structure includes a pointer
to a VFT of type ethtool_ops. The latter structure is
a collection of function pointers that can be used to both read and initialize a bunch
of parameters on the net_device structure, or to
trigger an action (i.e., restart auto-negotiation).
Not all device drivers currently support this feature; and those that do support it don't always support all of its functions. The initialization of
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access