[PATCH 1/1] staging: hv: Fix missing functions for net_device_ops (resubmit)

Haiyang Zhang haiyangz at microsoft.com
Tue Aug 3 18:21:50 UTC 2010


> From: Greg KH [mailto:greg at kroah.com]
> Sent: Monday, August 02, 2010 9:30 PM
> Why put the subject in the body of the email?  This forces me to edit
> it again :(

Sure, I'll remove it.

> > functions. We need to put them into net_device_ops. For example,
> > eth_change_mtu prevents setting MTU beyond 1500. This is necessary
> > because we don't support jumbo frame at this time.
> 
> What does this mean?  Is it a bug?  Just not going as fast as possible?
> Something else?

Yes, it's a bug when porting Linux IC from 2.6.27 to 2.6.32. In 2.6.27,
the default functions for Ethernet, like eth_change_mtu(), were assigned
by ether_setup(). But in 2.6.32, these function pointers moved to
net_device_ops structure and no longer be assigned in ether_setup(). So we
need to set these functions in our driver code. It will ensure the MTU won't
be set beyong 1500. Otherwise, this can cause an error on the server side,
because the HyperV linux driver doesn't support jumbo frame yet.

> >   It affects kernel 2.6.32 and later, which are all versions
> > containing Hyper-V drivers.
> 
> So is this fixing a bug that needs to be backported to these older
> kernels (i.e. the staging tree?)  Is this something that is causing
> people problems?

Yes it should be backported. The bug can cause error on guest and host.

Thanks,

- Haiyang




More information about the devel mailing list