From: David S. Miller Date: Thu, 16 Jul 2015 00:13:24 +0000 (-0700) Subject: Merge branch 'gianfar_rx_sg' X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=9061cb023567abf081569d6851b0815dd18437e6;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git Merge branch 'gianfar_rx_sg' Claudiu Manoil says: ==================== gianfar: Add Rx S/G This patch-set introduces scatter/gather support on the Rx side, addressing Rx path performance issues in the driver. Thanks. As an example, two boards connected back-to-back were used to measure the throughput, running the same kernel 4.1, before and after applying these patches. The netperf UDP_STREAM results below show that the bottleneck lies on the Rx side BEFORE applying the patches, and that the Rx throughput is even lower with a larger MTU. AFTER applying the patches the Rx bottleneck is gone (Rx throughput matches the Tx one) and the RX throughput is not influenced by MTU size any longer (as expected). BEFORE: 1) MTU 1500 (default) root@p1010rdb-pb:~# netperf -l 150 -cC -H 192.85.1.1 -p 12867 -t UDP_STREAM -- -m 512 MIGRATED UDP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 192.85.1.1 () port 0 AF_INET Socket Message Elapsed Messages CPU Service Size Size Time Okay Errors Throughput Util Demand bytes bytes secs # # 10^6bits/sec % SS us/KB 163840 512 150.00 20119124 0 549.4 100.00 14.911 163840 150.00 14057349 383.9 100.00 14.911 root@p1010rdb-pb:~# netperf -l 150 -cC -H 192.85.1.1 -p 12867 -t UDP_STREAM -- -m 64 MIGRATED UDP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 192.85.1.1 () port 0 AF_INET Socket Message Elapsed Messages CPU Service Size Size Time Okay Errors Throughput Util Demand bytes bytes secs # # 10^6bits/sec % SS us/KB 163840 64 150.00 23654013 0 80.7 100.00 101.463 163840 150.00 15875288 54.2 100.00 101.463 2) MTU 8000 root@p1010rdb-pb:~# netperf -l 150 -cC -H 192.85.1.1 -p 12867 -t UDP_STREAM -- -m 512 MIGRATED UDP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 192.85.1.1 () port 0 AF_INET Socket Message Elapsed Messages CPU Service Size Size Time Okay Errors Throughput Util Demand bytes bytes secs # # 10^6bits/sec % SS us/KB 163840 512 150.00 20067232 0 548.0 100.00 14.950 163840 150.00 6113498 166.9 99.95 14.942 root@p1010rdb-pb:~# netperf -l 150 -cC -H 192.85.1.1 -p 12867 -t UDP_STREAM -- -m 64 MIGRATED UDP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 192.85.1.1 () port 0 AF_INET Socket Message Elapsed Messages CPU Service Size Size Time Okay Errors Throughput Util Demand bytes bytes secs # # 10^6bits/sec % SS us/KB 163840 64 150.00 23621279 0 80.6 100.00 101.604 163840 150.00 5868602 20.0 99.96 101.563 AFTER: (both MTU 1500 and MTU 8000) root@p1010rdb-pb:~# netperf -l 150 -cC -H 192.85.1.1 -p 12867 -t UDP_STREAM -- -m 512 MIGRATED UDP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 192.85.1.1 () port 0 AF_INET Socket Message Elapsed Messages CPU Service Size Size Time Okay Errors Throughput Util Demand bytes bytes secs # # 10^6bits/sec % SS us/KB 163840 512 150.00 19914969 0 543.8 100.00 15.064 163840 150.00 19914969 543.8 99.35 14.966 root@p1010rdb-pb:~# netperf -l 150 -cC -H 192.85.1.1 -p 12867 -t UDP_STREAM -- -m 64 MIGRATED UDP STREAM TEST from 0.0.0.0 () port 0 AF_INET to 192.85.1.1 () port 0 AF_INET Socket Message Elapsed Messages CPU Service Size Size Time Okay Errors Throughput Util Demand bytes bytes secs # # 10^6bits/sec % SS us/KB 163840 64 150.00 23433989 0 80.0 100.00 102.416 163840 150.00 23433989 80.0 99.62 102.023 ==================== Signed-off-by: David S. Miller --- 9061cb023567abf081569d6851b0815dd18437e6