Re: [PATCH 3/3] Minor improvement for smsc95xx netusb driver performance.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello.

On 11/25/2015 10:15 PM, Ameen wrote:

Reduce number of memcpy's by 1-2 improve transmit performance by 2-4%.
or reduce cpu usage on a comparable value.

   CPU.

Signed-off-by: Ameen Ali <AmeenAli023@xxxxxxxxx>
---
  drivers/net/usb/smsc95xx.c | 30 ++++++++++++++++--------------
  1 file changed, 16 insertions(+), 14 deletions(-)

diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c
index 66b3ab9..022d2f63 100644
--- a/drivers/net/usb/smsc95xx.c
+++ b/drivers/net/usb/smsc95xx.c
@@ -1830,7 +1830,9 @@ static struct sk_buff *smsc95xx_tx_fixup(struct usbnet *dev,
  {
  	bool csum = skb->ip_summed == CHECKSUM_PARTIAL;
  	int overhead = csum ? SMSC95XX_TX_OVERHEAD_CSUM : SMSC95XX_TX_OVERHEAD;
-	u32 tx_cmd_a, tx_cmd_b;
+	struct tx_commands_t {
+		u32 cmd_a, cmd_b, csum_preamble;
+	}tx_cmds;

   Need space after }.


  	/* We do not advertise SG, so skbs should be already linearized */
  	BUG_ON(skb_shinfo(skb)->nr_frags);
@@ -1855,26 +1857,26 @@ static struct sk_buff *smsc95xx_tx_fixup(struct usbnet *dev,
[...]

-	skb_push(skb, 4);
-	tx_cmd_b = (u32)(skb->len - 4);
+	tx_cmds.cmd_a = (u32)(skb->len) | TX_CMD_A_FIRST_SEG_ |

   Parens around 'skb->len' not needed.

[...]

MBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux