[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <157393863283F442885425D2C4542856489E7CCD@nasanexd02f.na.qualcomm.com>
Date:	Sun, 24 Mar 2013 04:54:46 +0000
From:	"Huang, Xiong" <xiong@....qualcomm.com>
To:	Hannes Frederic Sowa <hannes@...essinduktion.org>
CC:	Sven Hartge <sven@...nhartge.de>,
	"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: RE: Atheros Communications Inc. AR8121/AR8113/AR8114 Gigabit or
 Fast Ethernet (rev b0) 1.0.0.7 md5/sha1 corrupted using NFS and samba
 (updated) Version 2
> 
> >
> > 	if (((pkt_flags & RRS_IS_IPV4) && ((pkt_flags & RRS_IS_TCP) ||
> (pkt_flags & RRS_IS_UDP))) {
> > 		if (pkt_flags & RRS_IS_802_3)
> > 			head_len += 8;
> > 		iph = (struct iphdr *) (packet + head_len);
> > 		if ((iph->frag_off != 0 || (pkt_flags & RRS_IS_IP_FRAG))
> && !(pkt_flags & RRS_IS_IP_DF))
> > 			goto hw_xsum;
> > 	}
> > 	if (!(err_flags & (RRS_ERR_IP_CSUM | RRS_ERR_L4_CSUM))) {
> > 		skb->ip_summed = CHECKSUM_UNNECESSARY;
> > 		return;
> > 	}
> 
> Btw the captured corrupted packets are ordinary non-fragmented TCP IPv4
> packets. But perhaps these flags are dual-use?
> 
Not dual-use.  You could check  flags for corrupted packets and compare it with good packet.
Your corrupted packet is just TCP checksum error ?
Thanks
Xiong
Powered by blists - more mailing lists
 
