Skip to contentSkip to conversation

mac80211 splat with pktgen on hacked 4.4 kernel.

DISCUSSION Ben Greear 1 participant 2 messages Jun 15, 2016

lore
Share & tools
lore

Ben Greear

author
#0 lore raw

On 4.4.11 + local hacks, including fairly extensive pktgen changes....

When I overdrive transmit on a station with pktgen, I see this splat hit below repeatedly. Any ideas on what kinds of things might cause this?

		while (!skb_queue_empty(&local->pending[i])) {
			struct sk_buff *skb = __skb_dequeue(&local->pending[i]);
			struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);

			if (WARN_ON(!info->control.vif)) {
				ieee80211_free_txskb(&local->hw, skb);
				continue;
			}

Thanks,
Ben

Signature · 2 lines
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com
author
#1 lore raw
Quoted 6 lines · Ben Greear

On 4.4.11 + local hacks, including fairly extensive pktgen changes....

When I overdrive transmit on a station with pktgen, I see this splat hit below repeatedly. Any ideas on what kinds of things might cause this?

Quoted 9 lines
         while (!skb_queue_empty(&local->pending[i])) {
             struct sk_buff *skb = __skb_dequeue(&local->pending[i]);
             struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);

             if (WARN_ON(!info->control.vif)) {
                 ieee80211_free_txskb(&local->hw, skb);
                 continue;
             }

For instance, should this method below set the vif when it is queueing up a backlogged frame when the queue is stopped? Seems it only sets the vif it it is transmitting the frame?

static bool ieee80211_tx_frags(struct ieee80211_local *local,

                               struct ieee80211_vif *vif,
                               struct ieee80211_sta *sta,
                               struct sk_buff_head *skbs,
                               bool txpending)

Thanks,
Ben

Signature · 2 lines
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com