[PATCH 5/7] ath10k: improve beacon submission latency
Kalle Valo
kvalo at qca.qualcomm.com
Thu Sep 12 12:47:36 EDT 2013
Michal Kazior <michal.kazior at tieto.com> writes:
> The patch prevents beacon misses in some case of
> heavy load on a system.
>
> If a beacon can't be transmitted directly from an
> SWBA event it will be left in arvif->beacon and
> transmission will be retried once TX credits
> become available.
>
> Signed-off-by: Michal Kazior <michal.kazior at tieto.com>
[...]
> static void ath10k_wmi_op_ep_tx_credits(struct ath10k *ar)
> {
> + ath10k_wmi_tx_beacons_nowait(ar);
> wake_up(&ar->wmi.tx_credits_wq);
> }
>
> @@ -131,6 +174,7 @@ static int ath10k_wmi_cmd_send(struct ath10k *ar, struct sk_buff *skb,
> int ret = -EINVAL;
>
> wait_event_timeout(ar->wmi.tx_credits_wq, ({
> + ath10k_wmi_tx_beacons_nowait(ar);
> ret = ath10k_wmi_cmd_send_nowait(ar, skb, cmd_id);
> (ret != -EAGAIN);
Please add a short comment to both calls of
ath10k_wmi_tx_beacons_nowait(). Something like "first transmit all
pending beacons" or similar.
--
Kalle Valo
More information about the ath10k
mailing list