Search Linux Wireless

Re: [PATCH] mac80211: Limit number of pending skbs.

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

 



On 05/30/2012 09:09 AM, Johannes Berg wrote:
On Wed, 2012-05-30 at 09:04 -0700, Ben Greear wrote:

There used to be bugs in this area in mac80211 and/or pktgen, and I
remember crashing my machine very trivially. I don't think that this is
still a problem though, but I haven't tried in a long time. FWIW, the
time-frame of this must've been ~2-3 years ago.

I think it's still broken..I've been carrying this patch for a year or two:

  From 5ad8e96ace28d798214ba6e203d143e6380e0605 Mon Sep 17 00:00:00 2001
From: Ben Greear<greearb@xxxxxxxxxxxxxxx>
Date: Tue, 14 Jun 2011 11:01:50 -0700
Subject: [PATCH 016/102] mac80211: Set up tx-queue-mapping in subif_start_xmit.

Otherwise, ath9k gets confused about which queue to use
and spews a warning like this when driving traffic with
pktgen.


diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index e05667c..1f026b5 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -2072,6 +2072,8 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
   	} else
   		memcpy(skb_push(skb, hdrlen),&hdr, hdrlen);

+	skb_set_queue_mapping(skb, ieee80211_select_queue(sdata, skb));

Looks like pktgen then doesn't care about the select_queue() call which
should be called before start_xmit

pktgen hard-codes the xmit queue since it is a testing module and one
may want to force pkts out various queues.  That can be very useful for
testing normal Ethernet NICs, at least.

I'm not sure my fix is 100% proper, but it seems to make things work
to one degree or another.

Thanks,
Ben

--
Ben Greear <greearb@xxxxxxxxxxxxxxx>
Candela Technologies Inc  http://www.candelatech.com

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


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux