Search Linux Wireless

Re: [PATCH] mac80211_hwsim: Set IEEE80211_STAT_ACK flag when userspace indicates that the frame has been acknowledged.

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

 



Javier,

wmediumd is not honoring HWSIM_TX_CTL_REQ_TX_STATUS right now, I can
send a separate wmediumd patch for that. This flag does not need to be
converted back to  IEEE80211_TX_CTL_REQ_TX_STATUS since we request the
status of transmission using this flag and its only relevant to
wmediumd for deciding whether to send TX information back to hwsim or
not.

HWSIM_TX_CTL_NO_ACK could be used to disable the generation of an ACK
(currently just "inserted" in to the hwsim monitor interface) for
unicast frames. Of course normally you would need an ACK, but someone
might want to test a scenario without ACKs. In that case, we should
not insert an ACK on the hwsim monitor interface when
HWSIM_TX_CTL_NO_ACK is set. Still, in this case we do not need to
convert back to IEEE80211_TX_CTL_NO_ACK.

So, basically converting back to IEEE80211_* flags is not required
(according to my understanding). This also implies that rate control
and the fail average will not be impacted by not converting the flags.

Rate control is interested in the number of retries which is already
being conveyed through TX info sent from the userspace to
mac80211_hwsim and further utilized by ieee80211_tx_status. Failed
average is only impacted by IEEE80211_STAT_ACK which has already been
set properly by the proposed patch.

-Qasim

On Tue, Jun 5, 2012 at 11:42 AM, Javier Cardona <javier@xxxxxxxxxxx> wrote:
> Qasim,
>
> While reviewing your patch I also noticed that the flags
> HWSIM_TX_CTL_NO_ACK and HWSIM_TX_CTL_REQ_TX_STATUS are not converted
> back to IEEE80211_TX_CTL_NO_ACK and IEEE80211_TX_CTL_REQ_TX_STATUS on
> frames received from userspace.  Do you think that might affect rate
> adaptation or the failed average?
>
> Cheers,
>
> Javier
>
>
>
> On Tue, Jun 5, 2012 at 9:39 AM, Javier Cardona <javier@xxxxxxxxxxx> wrote:
>> On Mon, Jun 4, 2012 at 11:25 PM, Qasim Javed <qasimj@xxxxxxxxx> wrote:
>>> The station fail average is not updated correctly since the IEEE80211_STAT_ACK flag is not set when using wmediumd with mac80211_hwsim. Set this flag when wmediumd indicates that the frame was successfully transmitted (eventually).
>>>
>>> Signed-off-by: Qasim Javed <qasimj@xxxxxxxxx>
>> Signed-off-by: Javier Cardona <javier@xxxxxxxxxxx>
>>
>>> ---
>>>  drivers/net/wireless/mac80211_hwsim.c |    1 +
>>>  1 files changed, 1 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
>>> index 4c9336c..a0b7cfd 100644
>>> --- a/drivers/net/wireless/mac80211_hwsim.c
>>> +++ b/drivers/net/wireless/mac80211_hwsim.c
>>> @@ -1555,6 +1555,7 @@ static int hwsim_tx_info_frame_received_nl(struct sk_buff *skb_2,
>>>                        hdr = (struct ieee80211_hdr *) skb->data;
>>>                        mac80211_hwsim_monitor_ack(data2->hw, hdr->addr2);
>>>                }
>>> +               txi->flags |= IEEE80211_TX_STAT_ACK;
>>>        }
>>>        ieee80211_tx_status_irqsafe(data2->hw, skb);
>>>        return 0;
>>> --
>>> 1.7.1
>>>
>>
>>
>>
>> --
>> Javier Cardona
>> cozybit Inc.
>> http://www.cozybit.com
>
>
>
> --
> Javier Cardona
> cozybit Inc.
> http://www.cozybit.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