Files
linux/drivers/net
Luis R. Rodriguez cb71d9bafb ath9k: Handle -ENOMEM on RX gracefully
We would get an oops on RX on -ENOMEM by passing
NULL to the hardware on ath_rx_buf_link(). The oops
would look something like this:

ath_rx_tasklet+0x515/0x53b
ath9k_tasklet+0x48
tasklet_action
__do_softirq
irq_exit
do_IRQ

RIP: ath_rx_buf_link+0x3a

We correct this by handling the requeue directly on
the ath_rx_tasklet() and trying to allocate an skb
*prior* to sending up the last hardware processed
skb. If we run out of memory this gauranteees we have
skbs to work with while it simply drops new received
frames.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-11-26 09:47:44 -05:00
..
…
2008-11-06 00:50:56 -05:00
2008-11-21 21:29:25 -08:00
2008-11-25 01:02:08 -08:00
2008-11-21 17:30:58 -08:00
2008-11-21 17:32:15 -08:00
2008-11-21 17:22:53 -08:00
2008-11-21 17:29:50 -08:00
2008-11-21 17:32:54 -08:00
2008-11-25 03:53:09 -08:00
…
2008-10-27 17:06:18 -07:00
…
…
…
…
…
2008-11-24 14:47:01 -08:00
2008-11-21 17:39:02 -08:00
…
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
…
…
2008-10-27 17:06:18 -07:00
…
…
2008-07-18 17:54:17 -07:00
2008-10-09 12:22:38 -07:00
2008-11-21 17:31:27 -08:00
2008-11-12 16:02:45 -08:00
2008-08-13 16:05:38 -07:00
2008-08-13 16:05:37 -07:00
2008-08-13 16:05:37 -07:00
2008-11-21 17:36:04 -08:00
2008-08-13 16:05:37 -07:00
2008-09-03 14:38:00 -07:00
2008-09-22 19:27:10 -07:00
2008-10-27 17:06:18 -07:00
…
…
…
…
…
2008-11-21 17:31:51 -08:00
…
2008-11-16 12:41:35 -08:00
2008-11-20 20:28:00 -08:00
…
2008-11-21 17:37:54 -08:00
2008-10-27 17:06:18 -07:00
…
2008-11-21 17:36:36 -08:00
…
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
…
2008-10-27 17:06:18 -07:00
…
2008-07-25 15:44:44 +10:00
2008-08-14 04:26:38 -04:00
2008-10-27 17:06:18 -07:00
2008-11-21 17:28:33 -08:00
2008-10-08 19:51:33 -07:00
2008-11-25 01:02:08 -08:00
2008-11-21 17:39:02 -08:00
2008-10-27 17:06:18 -07:00
…
2008-10-27 17:06:18 -07:00
…
…
2008-10-27 17:06:18 -07:00
2008-11-21 17:39:02 -08:00
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
…
…
…
2008-11-14 14:44:08 -08:00
2008-11-21 17:35:40 -08:00
2008-07-20 17:12:34 -07:00
2008-07-20 17:12:34 -07:00
2008-10-17 02:38:35 +11:00
2008-10-27 17:06:18 -07:00
2008-11-10 15:11:56 -05:00
2008-11-10 15:11:56 -05:00
2008-11-21 17:36:58 -08:00
2008-11-21 17:34:56 -08:00
…
2008-11-21 17:28:55 -08:00
2008-10-27 17:06:18 -07:00
2008-11-21 17:37:24 -08:00
…
2008-08-07 02:20:57 -04:00
2008-11-21 17:34:32 -08:00
…
…
2008-08-07 01:55:50 -04:00
…
…
2008-10-22 06:22:13 -04:00
…
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
…
2008-08-29 02:13:33 -07:00
…
2008-08-29 02:14:29 -07:00
2008-08-29 02:14:43 -07:00
2008-10-27 17:06:18 -07:00
…
2008-11-21 17:34:09 -08:00
2008-11-21 17:23:26 -08:00
2008-11-21 17:22:19 -08:00
2008-05-30 22:18:02 -04:00
…
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00
2008-10-27 17:06:18 -07:00