Search Linux Wireless

Re: [PATCH v7 2/4] ath9k: always call ath_reset from workqueue context

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

 



On 2011-08-30 8:20 AM, Mohammed Shafi wrote:
On Tue, Aug 30, 2011 at 11:39 AM, Felix Fietkau<nbd@xxxxxxxxxxx>  wrote:
 On 2011-08-30 7:57 AM, Mohammed Shafi wrote:

 On Tue, Aug 30, 2011 at 12:10 AM, Felix Fietkau<nbd@xxxxxxxxxxx>    wrote:

   This makes it much easier to add further rework to avoid race conditions
   between reset and other work items.
   Move other functions to make ath_reset static.

   Signed-off-by: Felix Fietkau<nbd@xxxxxxxxxxx>
   ---
    drivers/net/wireless/ath/ath9k/ath9k.h  |    3 +-
    drivers/net/wireless/ath/ath9k/beacon.c |    4 +-
    drivers/net/wireless/ath/ath9k/init.c   |    1 +
    drivers/net/wireless/ath/ath9k/main.c   |  152
 ++++++++++++++++---------------
    drivers/net/wireless/ath/ath9k/xmit.c   |    6 +-
    5 files changed, 86 insertions(+), 80 deletions(-)

   diff --git a/drivers/net/wireless/ath/ath9k/xmit.c
 b/drivers/net/wireless/ath/ath9k/xmit.c
   index 49b93c2..f60706b 100644
   --- a/drivers/net/wireless/ath/ath9k/xmit.c
   +++ b/drivers/net/wireless/ath/ath9k/xmit.c
   @@ -582,7 +582,7 @@ static void ath_tx_complete_aggr(struct ath_softc
 *sc, struct ath_txq *txq,
          rcu_read_unlock();

          if (needreset)
   -               ath_reset(sc, false);
   +               ieee80211_queue_work(sc->hw,&sc->hw_reset_work);

 Hi Felix,

 retry_tx is set to 'false' in ath_reset here, but ath_reset_work
 always has it true. had i missed some thing?

 Since the reset work is deferred now, it can be allowed to retry tx now
 instead of dropping all packets in the queue.

oh ok, in this path we need reset when the chip becomes deaf/mute(as
mentioned  in the comment),
so i am not sure retrying tx will help rather than doing immediate
reset of the chip.
thanks.
Well, tx will be retried only after the full reset, so it should be fine. I'll make sure the next version will bail out of the tx completion tasklet when a reset is necessary, so that the reset can run right away.

- Felix
--
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