lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1244656659.2845.11.camel@localhost.localdomain>
Date:	Wed, 10 Jun 2009 13:57:39 -0400
From:	David Hollis <dhollis@...ehollis.com>
To:	David Brownell <david-b@...bell.net>
Cc:	netdev <netdev@...r.kernel.org>, mark@...x.com.tw,
	donald@...x.com.tw, Louis <louis@...x.com.tw>
Subject: [RFC usbnet.c] - Add packet aggregation capability

The ASIX AX88772 and AX88178 devices have the ability to transmit up 16K
worth of packets in a single bulk transfer.  The asix.c driver currently
doesn't support aggregating multiple packets into this buffer so that
packets can be transmitted in a single transfer.  On some systems -
notably ARM - high cpu utilization is experienced when transmitting
large numbers of packets.

The attached set of patches provided by ASIX add this capability to the
usbnet.c driver and add the implementation for the asix.c driver.  

These patches are not yet ready for merging but we are very interested
in any review and comments that can be provided at this time.

One item that I have is how to handle the portion in usbnet_probe() that
sets the hard_start_xmit handler with the change to netdevice_ops:

-	net->hard_start_xmit = usbnet_start_xmit;
+	if (info->tx_gather)
+		net->hard_start_xmit = usbnet_bundle_xmit;
+	else
+		net->hard_start_xmit = usbnet_start_xmit;


Would it be the most appropriate to merge the
usbnet_aggregate_skb_xmit() pieces into the existing usbnet_start_xmit
with appropriate conditionals?


View attachment "usbnet.h.patch" of type "text/x-patch" (1126 bytes)

View attachment "usbnet.c.patch" of type "text/x-patch" (6363 bytes)

View attachment "asix.c.patch" of type "text/x-patch" (2761 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ