On Tue, 12 Sep 2006 12:08:03 -0400
Jeff Garzik <[EMAIL PROTECTED]> wrote:

> Stephen Hemminger wrote:
> > The ethtool_ops structure is immutable, it expected to be setup
> > by the driver and is never changed. This patch allows drivers to
> > declare there ethtool_ops structure read-only.
> > 
> > Signed-off-by: Stephen Hemminger <[EMAIL PROTECTED]>
> 
> ACK, but I need the associated change-all-drivers patch, in order to 
> apply this.
> 
>       Jeff
> 
> 

Actually, no driver is immediately required since this is valid:

exiting_driver.c:

static struct ethtool_ops myops= { ... };

static int mydriver_probe(...) {
...
        dev = alloc_etherdev(sizeof(struct mypriv));
...
        dev->ethtool_ops = &myops;
...
        return register_netdev(dev);
}

Remember difference between:
struct net_device {
 
        struct ethtool_ops *ethtool_ops;

Existing definition, allow network core to change contents of
dev->ethtool_ops.


        const struct ethtool_ops *ethtool_ops;
Proposed patch, network code treats dev->ethtool_ops contents
as read-only. Devices MAY make ethtool_ops const.

Radical change would be:
        struct ethtool_ops *const ethtool_ops;

This would mean every device would have to define ethtool_ops
as const. Devices MUST make ethtool_ops const.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to