Michal Kazior <[email protected]> writes:

> It was possible on a host system running low on
> memory to end up with no rx buffers on pci pipes.
>
> This also cleans up the code a bit and, as a side
> effect, makes it possible to call
> ath10k_hif_start() more than once.
>
> Signed-off-by: Michal Kazior <[email protected]>

The rework is relatively big so it would be good to have a short
overview how you change it.

> +static void ath10k_pci_rx_replenish(struct ath10k_pci_pipe *pipe)
> +{
> +     struct ath10k *ar = pipe->hif_ce_state;
> +     struct ath10k_pci *ar_pci = ath10k_pci_priv(ar);
> +     int ret;
> +
> +     spin_lock_bh(&ar_pci->ce_lock);
> +     ret = __ath10k_pci_rx_post_pipe(pipe);
> +     spin_unlock_bh(&ar_pci->ce_lock);
> +
> +     if (ret) {
> +             ath10k_warn("failed to replenish pci rx pipe %d: %d, arming 
> retry timer\n",
> +                         pipe->pipe_num, ret);
> +             mod_timer(&ar_pci->rx_replenish_retry,
> +                       ATH10K_PCI_RX_REPLENISH_RETRY_MS);
> +     }
> +}

Buildbot sent a warning about this one which I think is valid:

drivers/net/wireless/ath/ath10k/pci.c:380 ath10k_pci_rx_replenish() warn: 
mod_timer() takes an absolute \
time not an offset.

-- 
Kalle Valo

_______________________________________________
ath10k mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/ath10k

Reply via email to