lkml.org 
[lkml]   [2013]   [Feb]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/2] qlcnic: set gso_type
On Wed, Feb 06, 2013 at 07:20:37PM -0800, Eric Dumazet wrote:
> On Thu, 2013-02-07 at 01:02 +0200, Michael S. Tsirkin wrote:
> > qlcnic set gso_size but not gso type. This leads to crashes
> > in macvtap.
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > ---
> > This one I only compiled - don't have qlogic hardware.
> >
> > drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c | 7 ++++++-
> > 1 file changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c
> > index bb4311e..370049c 100644
> > --- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c
> > +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c
> > @@ -1043,8 +1043,13 @@ qlcnic_process_lro(struct qlcnic_adapter *adapter,
> > th->seq = htonl(seq_number);
> > length = skb->len;
> >
> > - if (adapter->flags & QLCNIC_FW_LRO_MSS_CAP)
> > + if (adapter->flags & QLCNIC_FW_LRO_MSS_CAP) {
> > skb_shinfo(skb)->gso_size = qlcnic_get_lro_sts_mss(sts_data1);
> > + if (skb->protocol == ETH_P_IPV6)
>
> Are you sure its not skb->protocol == htons(ETH_P_IPV6) ?

Um, so it is. It just happens to work correctly for ipv4 :)
I'll respin.

> > + skb_shinfo(skb)->gso_type = SKB_GSO_TCPV6;
> > + else
> > + skb_shinfo(skb)->gso_type = SKB_GSO_TCPV4;
> > + }
> >
> > if (vid != 0xffff)
> > __vlan_hwaccel_put_tag(skb, vid);
>


\
 
 \ /
  Last update: 2013-02-07 10:01    [W:0.050 / U:0.304 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site