Fix using skb->priority for a already freed skb. --- ieee80211-1.0.1-chuyee/ieee80211_tx.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -puN ieee80211_tx.c~skb-ref-fix ieee80211_tx.c --- ieee80211-1.0.1/ieee80211_tx.c~skb-ref-fix 2005-07-13 15:54:11.000000000 +0800 +++ ieee80211-1.0.1-chuyee/ieee80211_tx.c 2005-07-13 15:54:30.000000000 +0800 @@ -254,8 +254,8 @@ int ieee80211_xmit(struct sk_buff *skb, .seq_ctl = 0 }; u8 dest[ETH_ALEN], src[ETH_ALEN]; - struct ieee80211_crypt_data* crypt; + int priority = skb->priority; spin_lock_irqsave(&ieee->lock, flags); @@ -456,7 +456,7 @@ int ieee80211_xmit(struct sk_buff *skb, if (txb) { /* QoS */ - if ((*ieee->hard_start_xmit)(txb, dev, skb->priority) == 0) { + if ((*ieee->hard_start_xmit)(txb, dev, priority) == 0) { stats->tx_packets++; stats->tx_bytes += txb->payload_size; return 0; _