Hi, Will send you updated patch which uses __cpu_to_be64().
Here is quick test I did with 60k packet buffer. With UFO we reach upto 5.87 Gbits/sec compared to 3.55Gbits/sec non UFO case With two threads we can reach upto 7.25 Gbits/sec where as non UFO still remains at 3.5 Gbits/sec linux:/home/araju/patch_sub/ufo # /home/tools/iperf-2.0.1/src/iperf -c 17.1.1.220 -u -l60k -w256m -b10g ------------------------------------------------------------ Client connecting to 17.1.1.220, UDP port 5001 Sending 61440 byte datagrams UDP buffer size: 228 KByte (WARNING: requested 256 MByte) ------------------------------------------------------------ [ 3] local 17.1.1.221 port 32775 connected with 17.1.1.220 port 5001 [ 3] 0.0-10.0 sec 6.83 GBytes 5.87 Gbits/sec [ 3] Sent 119356 datagrams [ 3] WARNING: did not receive ack of last datagram after 10 tries. linux:/home/araju/patch_sub/ufo # /tmp/ethtool-3/ethtool -K eth3 ufo off linux:/home/araju/patch_sub/ufo # /home/tools/iperf-2.0.1/src/iperf -c 17.1.1.220 -u -l60k -w256m -b10g ------------------------------------------------------------ Client connecting to 17.1.1.220, UDP port 5001 Sending 61440 byte datagrams UDP buffer size: 228 KByte (WARNING: requested 256 MByte) ------------------------------------------------------------ [ 3] local 17.1.1.221 port 32775 connected with 17.1.1.220 port 5001 [ 3] 0.0-10.0 sec 4.13 GBytes 3.55 Gbits/sec [ 3] Sent 72181 datagrams [ 3] WARNING: did not receive ack of last datagram after 10 tries. linux:/home/araju/patch_sub/ufo # ifconfig eth3 eth3 Link encap:Ethernet HWaddr 00:11:25:7B:00:E2 inet addr:17.1.1.221 Bcast:17.255.255.255 Mask:255.0.0.0 inet6 addr: fe80::211:25ff:fe7b:e2/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:17 errors:0 dropped:0 overruns:0 frame:0 TX packets:34713919 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3246 (3.1 Kb) TX bytes:51228028448 (48854.8 Mb) Interrupt:201 linux:/home/araju/patch_sub/ufo # /home/tools/iperf-2.0.1/src/iperf -c 17.1.1.220 -u -l60k -w256m -b5g -P2 ------------------------------------------------------------ Client connecting to 17.1.1.220, UDP port 5001 Sending 61440 byte datagrams UDP buffer size: 228 KByte (WARNING: requested 256 MByte) ------------------------------------------------------------ [ 3] local 17.1.1.221 port 32775 connected with 17.1.1.220 port 5001 [ 4] local 17.1.1.221 port 32776 connected with 17.1.1.220 port 5001 write2 failed: Connection refused [ 4] 0.0- 1.0 sec 149 MBytes 1.23 Gbits/sec [ 4] Sent 2550 datagrams [ 4] WARNING: did not receive ack of last datagram after 10 tries. [ 3] 0.0-10.0 sec 3.82 GBytes 3.29 Gbits/sec [ 3] Sent 66840 datagrams [SUM] 0.0-10.0 sec 3.97 GBytes 3.41 Gbits/sec [ 3] WARNING: did not receive ack of last datagram after 10 tries. linux:/home/araju/patch_sub/ufo # /tmp/ethtool-3/ethtool -K eth3 ufo on linux:/home/araju/patch_sub/ufo # /home/tools/iperf-2.0.1/src/iperf -c 17.1.1.220 -u -l60k -w256m -b5g -P2 ------------------------------------------------------------ Client connecting to 17.1.1.220, UDP port 5001 Sending 61440 byte datagrams UDP buffer size: 228 KByte (WARNING: requested 256 MByte) ------------------------------------------------------------ [ 4] local 17.1.1.221 port 32777 connected with 17.1.1.220 port 5001 [ 3] local 17.1.1.221 port 32776 connected with 17.1.1.220 port 5001 [ 4] 0.0-10.0 sec 4.91 GBytes 4.22 Gbits/sec [ 4] Sent 61308 datagrams [ 3] 0.0-10.0 sec 3.53 GBytes 3.03 Gbits/sec [ 3] Sent 61641 datagrams [SUM] 0.0-10.0 sec 8.44 GBytes 7.25 Gbits/sec [ 4] WARNING: did not receive ack of last datagram after 10 tries. [ 3] WARNING: did not receive ack of last datagram after 10 tries. linux:/home/araju/patch_sub/ufo # -----Original Message----- From: Andi Kleen [mailto:[EMAIL PROTECTED] Sent: Monday, November 14, 2005 1:57 PM To: Ananda Raju Cc: [EMAIL PROTECTED]; netdev@vger.kernel.org; [EMAIL PROTECTED]; [EMAIL PROTECTED]; [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: Re: [PATCH 2.6.15] s2io: UFO support On Monday 14 November 2005 21:25, Ananda Raju wrote: > Hi, > This patch implements the UFO support in S2io driver. This patch uses the UFO > interface available in linux-2.6.15 kernel. Can you share some numbers on how much difference it makes vs non UFO? > +#ifdef __BIG_ENDIAN > + sp->ufo_in_band_v[put_off] = > + (u64)skb_shinfo(skb)->ip6_frag_id; > +#else > + sp->ufo_in_band_v[put_off] = > + (u64)skb_shinfo(skb)->ip6_frag_id << 32; > +#endif With __cpu_to_be64 you could avoid the ifdef. -Andi - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html