netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 0/4] USB & USBNET: loose SG check and support usbnet DMA SG
@ 2013-08-03  2:46 Ming Lei
  2013-08-03  2:46 ` [PATCH v1 1/4] USB: introduce usb_device_no_sg_limit() helper Ming Lei
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Ming Lei @ 2013-08-03  2:46 UTC (permalink / raw)
  To: David S. Miller, Greg Kroah-Hartman
  Cc: Oliver Neukum, Sarah Sharp, netdev, linux-usb

Hi,

This patchset allows drivers to pass sg buffers which size can't be divided
by max packet size of endpoint if the host controllers(such ax xHCI) support
this kind of sg buffers.

Previously we added check[1] on the situation and don't allow these sg buffers
passed to USB HCD, looks the check is too strict to make use of new feature of
new hardware(xHCI) for some applications(such as network stack) which can't
provide this kind of sg buffers to usbnet driver, so the patch looses the check
in case that the host controller supports it.

Patch 3/4 implements DMA SG on usbnet driver, and patch 4/4 uses it on ax88179_178a
USB3 NIC for supporting TSO, so both CPU utilization and tx throughput can be
improved with TSO and DMA SG in case of the USB NIC is attached to xHCI controller.

This patchset is against Eric Dumazet's patch(ax88179_178a: avoid copy of tx
tcp packets), so maybe it is better to merge via net-next tree.

[1], http://git.kernel.org/cgit/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=10e232c597ac757e7f8600649f7e872e86de190f

V1:
	- introduce and apply usb_device_no_sg_limit() helper as suggested by Greg
	- simplify patch 4/4 against Eric Dumazet's patch(ax88179_178a: avoid copy of tx tcp packets)
	- don't pass usbnet header as sg buffer

 drivers/net/usb/ax88179_178a.c |   12 ++++++++++++
 drivers/net/usb/usbnet.c       |   38 ++++++++++++++++++++++++++++++++++++--
 drivers/usb/core/urb.c         |    3 ++-
 drivers/usb/host/xhci.c        |    4 ++++
 include/linux/usb.h            |   11 ++++++++++-
 include/linux/usb/usbnet.h     |    1 +
 6 files changed, 65 insertions(+), 4 deletions(-)


Thanks,
--
Ming Lei

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2013-08-04  0:28 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-03  2:46 [PATCH v1 0/4] USB & USBNET: loose SG check and support usbnet DMA SG Ming Lei
2013-08-03  2:46 ` [PATCH v1 1/4] USB: introduce usb_device_no_sg_limit() helper Ming Lei
2013-08-03 15:53   ` Alan Stern
2013-08-04  0:22     ` Ming Lei
2013-08-03  2:46 ` [PATCH v1 2/4] USB: XHCI: mark no_sg_limit Ming Lei
2013-08-03  2:46 ` [PATCH v1 3/4] USBNET: support DMA SG Ming Lei
     [not found]   ` <1375497998-7424-4-git-send-email-ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
2013-08-03  5:56     ` Oliver Neukum
     [not found]       ` <1375509413.2201.2.camel-B2T3B9s34ElbnMAlSieJcQ@public.gmane.org>
2013-08-03 19:07         ` David Miller
2013-08-04  0:19           ` Ming Lei
2013-08-03  2:46 ` [PATCH v1 4/4] USBNET: ax88179_178a: enable tso if usb host supports sg dma Ming Lei
2013-08-04  0:28 ` [PATCH v1 0/4] USB & USBNET: loose SG check and support usbnet DMA SG Ming Lei

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).