RE: [PATCH 1/1] staging: hv: Fix missing functions fornet_device_ops (resubmit)

From: Haiyang Zhang
Date: Tue Aug 03 2010 - 14:22:00 EST


> From: Greg KH [mailto:greg@xxxxxxxxx]
> 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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/