Messages in this thread | | | Subject | RE: [PATCH] ethtool_ops | Date | Fri, 6 Jun 2003 13:17:46 -0700 | From | "Feldman, Scott" <> |
| |
> Right now, each network driver which supports the ethtool > ioctl has its own implementation of everything from decoding > which ethtool ioctl it is, copying data to and from > userspace, marshalling and unmarshalling data from ethtool > packets, etc. The current setup makes it impossible to use > alternative interfaces to get at the same data (eg sysfs) and > it's not exactly typesafe.
This is really cool! Thanks for doing this Matthew.
Some questions:
* On get_gregs, for example, would it make sense to ->get_drvinfo so you'll know regdump_len and therefore can kmalloc an ethtool_regs with enough space to pass to ->get_regs? Keep the kmalloc and kfree together. Same for self_test, get_strings, and get_stats. For get_strings, size = max{n_stats, testinfo_len)*sizeof(u64).
* If the above is done, can we have one function type for the ethtool_ops functions? int f(struct netdev *, struct ethtool_cmd *). The drawback is the driver needs to cast to the specific ethtool_* struct.
* Can we get an HAVE_ETHTOOL_OPS defined in netdevice.h to support backward compat?
-scott - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |