mirror of
https://github.com/opnsense/src.git
synced 2026-02-03 20:49:35 -05:00
Panasas discovered that ioctl(SIOCGLAGGPORT) returns ENOTTY for mxge(4) when the NIC is not a member of a lagg. This came as a surprise, because the SIOCGLAGGPORT handler in if_lagg.c only returns ENOENT (if run against the laggX interface, rather than a physical port) or EINVAL (if run against a non-member physical port). This behavior was not seen with other drivers, such as bge(4), igb(4), and cxl(4). When I compared their respective ioctl handlers, I found that they all called ether_ioctl() for the default (i.e. unhandled) case; by contrast, mxge(4) only calls ether_ioctl() for two specific cases, and returns ENOTTY for the default case. Remove the two cases which explicitly call ether_ioctl(), and let the default case call it instead. This matches what the vast majority of the NIC drivers do. Reviewed by: kmacy MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D14381 |
||
|---|---|---|
| .. | ||
| eth_z8e.h | ||
| ethp_z8e.h | ||
| if_mxge.c | ||
| if_mxge_var.h | ||
| mcp_gen_header.h | ||
| mxge_eth_z8e.c | ||
| mxge_ethp_z8e.c | ||
| mxge_mcp.h | ||
| mxge_rss_eth_z8e.c | ||
| mxge_rss_ethp_z8e.c | ||
| rss_eth_z8e.h | ||
| rss_ethp_z8e.h | ||