RE: [PATCH V2 net-next] net: hns: Fix to conditionally convey RX checksum flag to stack

From: Salil Mehta
Date: Mon Dec 05 2016 - 10:44:09 EST


> -----Original Message-----
> From: David Miller [mailto:davem@xxxxxxxxxxxxx]
> Sent: Saturday, December 03, 2016 8:09 PM
> To: Salil Mehta
> Cc: Zhuangyuzeng (Yisen); mehta.salil.lnk@xxxxxxxxx;
> netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Linuxarm
> Subject: Re: [PATCH V2 net-next] net: hns: Fix to conditionally convey
> RX checksum flag to stack
>
> From: Salil Mehta <salil.mehta@xxxxxxxxxx>
> Date: Thu, 1 Dec 2016 12:09:22 +0000
>
> > But maybe now since we don't have any method to de-multiplex the kind
> of
> > checksum error (cannot depend upon register) we can have below code
> > re-arrangement:
> >
> > hns_nic_rx_checksum() {
> > /* check supported L3 protocol */
> > if (l3 != IPV4 && l3 != IPV6)
> > return;
> > /* check if L3 protocols error */
> > if (l3e)
> > return;
> >
> > /* check if the packets are fragmented */
> > If (l3frags)
> > Return;
> >
> > /* check supported L4 protocol */
> > if (l4 != UDP && l4 != TCP && l4 != SCTP)
> > return;
> > /* check if any L4 protocol error */
> > if (l3e)
> > return;
> >
> > /* packet with valid checksum - covey to stack */
> > skb->ip_summed = CHECKSUM_UNNECESSARY
> > }
>
> This looks a lot cleaner and easier to understand.
Sure, floated Patch V3. Please have a look. Thanks!

Best regards
Salil