> -----Original Message----- > From: David Miller [mailto:davem@xxxxxxxxxxxxx] > Sent: Friday, March 7, 2014 2:19 AM > To: KY Srinivasan > Cc: netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > devel@xxxxxxxxxxxxxxxxxxxxxx; olaf@xxxxxxxxx; apw@xxxxxxxxxxxxx; > jasowang@xxxxxxxxxx > Subject: Re: [PATCH 5/6] Drivers: net: hyperv: Enable send side checksum > offload > > From: KY Srinivasan <kys@xxxxxxxxxxxxx> > Date: Thu, 6 Mar 2014 20:29:13 +0000 > > > > > > >> -----Original Message----- > >> From: David Miller [mailto:davem@xxxxxxxxxxxxx] > >> Sent: Friday, March 7, 2014 1:04 AM > >> To: KY Srinivasan > >> Cc: netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > >> devel@xxxxxxxxxxxxxxxxxxxxxx; olaf@xxxxxxxxx; apw@xxxxxxxxxxxxx; > >> jasowang@xxxxxxxxxx > >> Subject: Re: [PATCH 5/6] Drivers: net: hyperv: Enable send side > >> checksum offload > >> > >> From: "K. Y. Srinivasan" <kys@xxxxxxxxxxxxx> > >> Date: Thu, 6 Mar 2014 03:13:09 -0800 > >> > >> > +bool get_net_transport_info(struct sk_buff *skb, bool *is_v4, > >> > + bool *is_tcp, bool *is_udp, u32 *trans_off) { > >> > >> Returning so many values like this is awkward, at best. > >> > >> Why not return a well defined bitmask: > >> > >> #define TRANSPORT_INFO_SUCCESS 0x00000001 > >> #define TRANSPORT_INFO_TCP 0x00000002 > >> #define TRANSPORT_INFO_UDP 0x00000004 > >> > >> Then the only value you have to return by reference is trans_off. > > > > I also need information on the IP version as well. If it is ok with > > you, I will use the return value to get information on the network > > protocol and return information on transport via reference - protocol and > the offset. > > Just add "TRANSPORT_INFO_IPv4" as another bitmask in the return value. The network information is independent of the transport information - I can partition the return value to encode all the possible network and transport combination and subsequently parse the network and transport information. I will go ahead and code it up this way. Regards, K. Y _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel