Search Linux Wireless

Question: Packet drop criterion

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

 



Hello everyone,

I would like to modify the retry threshold for dropping a packet using
mesh mode. I tried with iw

    iw phy <phyname> set retry [short <limit>] [long <limit>]

with short and long limits equal to 10 first and later 5, but I couldn't
tell any effect. I'm checking by adding a printk in `status.c` and
manually shutting down (ifdown) the mesh-peered interface to cause
packet retries. It turns out that the tx report only appears when
`retry_count` is 28 (after many continued drops, it also appears at 23,
24, 25 or retries). 

    void ieee80211_tx_status(struct ieee80211_hw *hw, struct sk_buff *skb)
    {
        /* ... */
                if (info->flags & IEEE80211_TX_STAT_TX_FILTERED) {
                        ieee80211_handle_filtered_frame(local, sta, skb);
                        rcu_read_unlock();
                        return;
                } else {
                        if (!acked)
                                sta->tx_retry_failed++;
                        sta->tx_retry_count += retry_count;
                        /* Dirty debugging */
                        printk("Packet dropped. Retry count: %d",
retry_count);
                }

                rate_control_tx_status(local, sband, sta, skb);
                if (ieee80211_vif_is_mesh(&sta->sdata->vif))
                        ieee80211s_update_metric(local, sta, skb);
        /* ... */
    }

I'm using linux backports v3.12.8, ath9k wifi dongles, and interfaces on
mesh point mode.

Did I get wrong the iw command?
Is it Minstrel who decides the retry trheshold?
Is it Atheros driver?
Does it have anything to do with mesh mode?

I'm trying to find the responsible at the source code, but haven't
succeeded yet, so I decided to write to yo.

Thank you very much
Ferran Quer






[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