Anton Vorontsov
a3bc1f11e9
gianfar: Revive SKB recycling
...
Before calling gfar_clean_tx_ring() the driver grabs an irqsave
spinlock, and then tries to recycle skbs. But since
skb_recycle_check() returns 0 with IRQs disabled, we'll never
recycle any skbs.
It appears that gfar_clean_tx_ring() and gfar_start_xmit() are
mostly idependent and can work in parallel, except when they
modify num_txbdfree.
So we can drop the lock from most sections and thus fix the skb
recycling.
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com >
Acked-by: Kumar Gala <galak@kernel.crashing.org >
Signed-off-by: David S. Miller <davem@davemloft.net >
2009-11-11 19:03:36 -08:00
..
2009-10-04 15:03:00 -07:00
2009-09-21 15:15:53 +02:00
2009-11-10 20:28:49 -08:00
2009-09-22 07:17:27 -07:00
2009-10-04 12:39:14 -07:00
2009-09-24 07:21:04 -07:00
2009-10-04 15:05:10 -07:00
2009-10-06 01:39:51 -07:00
2009-09-18 09:16:57 -07:00
2009-09-22 07:17:45 -07:00
2009-09-23 18:31:11 +10:00
2009-09-24 07:21:05 -07:00
2009-10-04 15:05:10 -07:00
2009-09-22 07:17:38 -07:00
2009-10-01 16:11:11 -07:00
2009-09-30 08:03:00 -07:00
2009-10-04 15:05:10 -07:00
2009-10-04 22:53:42 +02:00
2009-10-04 22:53:45 +02:00
2009-09-23 09:32:11 -07:00
2009-09-27 11:39:25 -07:00
2009-11-06 14:32:20 +03:00
2009-10-05 00:10:10 -07:00
2009-10-04 15:05:10 -07:00
2009-11-10 20:30:37 -08:00
2009-10-04 22:53:43 +02:00
2009-10-01 16:11:11 -07:00
2009-10-04 22:53:46 +02:00
2009-10-04 12:39:14 -07:00
2009-10-04 15:05:10 -07:00
2009-09-24 07:21:05 -07:00
2009-09-22 07:51:45 -07:00
2009-10-04 15:05:10 -07:00
2009-10-19 23:22:50 -07:00
2009-10-02 16:20:43 -07:00
2009-10-01 21:19:30 +02:00
2009-11-11 19:03:36 -08:00
2009-09-23 07:39:43 -07:00
2009-09-24 09:34:24 +09:30
2009-11-10 20:54:43 -08:00
2009-09-24 07:21:04 -07:00
2009-09-25 14:24:22 -04:00
2009-10-02 16:20:43 -07:00
2009-10-02 11:27:57 -04:00
2009-09-25 15:09:48 -04:00
2009-09-23 03:49:27 +04:00
2009-09-22 13:58:23 +01:00
2009-09-24 21:22:33 +01:00
2009-10-17 23:57:24 -07:00
2009-09-22 07:17:25 -07:00
2009-10-01 16:11:11 -07:00
2009-11-06 00:55:55 -08:00
2009-10-03 01:16:12 -04:00
2009-10-01 16:11:17 -07:00
2009-11-11 11:38:16 -08:00
2009-11-09 11:17:24 -08:00
2009-09-19 01:41:49 -04:00
2009-09-27 11:39:25 -07:00
2009-10-04 15:05:10 -07:00
2009-10-01 16:11:11 -07:00
2009-10-02 13:37:18 -07:00
2009-09-23 22:26:32 +09:30
2009-09-24 07:21:05 -07:00
2009-10-04 22:53:41 +02:00
2009-09-25 08:38:16 +00:00
2009-10-04 15:05:10 -07:00
2009-09-23 10:07:49 -07:00