tg3: Prevent page allocation failure during TSO workaround
authorMichael Chan <mchan@broadcom.com>
Mon, 12 May 2014 03:22:54 +0000 (20:22 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 13 May 2014 22:38:51 +0000 (18:38 -0400)
commitd3f6f3a1d818410c17445bce4f4caab52eb102f1
tree19370e26092b97714c595cee5b71f90f303fd0db
parentd71c0dc4e961e74143a644f248fc1a39cabf6586
tg3: Prevent page allocation failure during TSO workaround

If any TSO fragment hits hardware bug conditions (e.g. 4G boundary), the
driver will workaround by calling skb_copy() to copy to a linear SKB.  Users
have reported page allocation failures as the TSO packet can be up to 64K.
Copying such a large packet is also very inefficient.  We fix this by using
existing tg3_tso_bug() to transmit the packet using GSO.

Signed-off-by: Prashant Sreedharan <prashant@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/tg3.c