Bugs in wake-queue logic.

Ben Greear greearb at candelatech.com
Thu Dec 3 11:52:46 PST 2015


So, after tweaking a firmware image to actually be able to use
all tx-buffers, then queues can actually be stopped on the host
now.

I'm now getting splats related to tx-queue being
out of range.

Why are we using vdev_id as the queue-id below?

void ath10k_mac_vif_tx_unlock(struct ath10k_vif *arvif, int reason)
{
         struct ath10k *ar = arvif->ar;

         lockdep_assert_held(&ar->htt.tx_lock);

         WARN_ON(reason >= BITS_PER_LONG);
         arvif->tx_paused &= ~BIT(reason);

         if (ar->tx_paused)
                 return;

         if (arvif->tx_paused)
                 return;

         ieee80211_wake_queue(ar->hw, arvif->vdev_id);
}


Thanks,
Ben

-- 
Ben Greear <greearb at candelatech.com>
Candela Technologies Inc  http://www.candelatech.com




More information about the ath10k mailing list