Search Linux Wireless

Re: [PATCH v2] iwlagn: use cts-to-self protection on 5000 adapters series

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

 



On Thu, May 26, 2011 at 08:20:58AM -0700, Daniel Halperin wrote:
> On Thu, May 26, 2011 at 7:50 AM, Guy, Wey-Yi <wey-yi.w.guy@xxxxxxxxx> wrote:
> > On Thu, 2011-05-26 at 08:14 -0700, Stanislaw Gruszka wrote:
> >> diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c b/drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c
> >> index b12c72d..23fa93d 100644
> >> --- a/drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c
> >> +++ b/drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c
> >> @@ -163,17 +163,9 @@ static void iwlagn_tx_cmd_protection(struct iwl_priv *priv,
> >>                                    __le16 fc, __le32 *tx_flags)
> >>  {
> >>       if (info->control.rates[0].flags & IEEE80211_TX_RC_USE_RTS_CTS ||
> >> -         info->control.rates[0].flags & IEEE80211_TX_RC_USE_CTS_PROTECT) {
> >> +         info->control.rates[0].flags & IEEE80211_TX_RC_USE_CTS_PROTECT ||
> >> +         info->flags & IEEE80211_TX_CTL_AMPDU)
> >>               *tx_flags |= TX_CMD_FLG_PROT_REQUIRE_MSK;
> >> -             return;
> >> -     }
> >> -
> >> -     if (priv->cfg->ht_params &&
> >> -         priv->cfg->ht_params->use_rts_for_aggregation &&
> >> -         info->flags & IEEE80211_TX_CTL_AMPDU) {
> >> -             *tx_flags |= TX_CMD_FLG_PROT_REQUIRE_MSK;
> >> -             return;
> >> -     }
> >>  }
> 
> Shouldn't there be a new "use_cts_for_aggregation" flag and one that
> dominates (looks like use_rts in your setup), rather than this?

Not sure if I understand. Rts-cts and cts-to-self are mutual exclusive
at present, so if use_rts_for_aggregations = 0 mean that cts-to-self
protection must be used. Perhaps we should introduce 4-way module
option like: FORCE_RTS_CTS, FORCE_CTS_TO_SELF, FORCE_NO_PROTECTION,
DEFAULT (HW depend) just for doing experiments.

> I'm
> still a bit confused as to why CTS-to-self should help (as opposed to
> masking some other bug).

I have no idea too, and indeed this could mask some (firmware?) bug.
I think I can explain slight better performance on 6000 - when we
use rts-cts two additional frames must be used when starting BA session,
with cts-to-self only one frame.

Anyway 11n on iwlwifi still need some more investigation and fixing.

Stanislaw
--
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 Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux