From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from nbd.name (unknown [IPv6:2a01:4f8:131:30e2::2]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by huchra.bufferbloat.net (Postfix) with ESMTPS id 94B9721F26A; Sat, 19 Apr 2014 04:22:53 -0700 (PDT) Message-ID: <53525C84.8030809@openwrt.org> Date: Sat, 19 Apr 2014 13:22:44 +0200 From: Felix Fietkau User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Dave Taht , "cerowrt-devel@lists.bufferbloat.net" , cerowrt@lists.bufferbloat.net References: In-Reply-To: X-Enigmail-Version: 1.6 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Cerowrt-devel] [Bug #442] < vs <= in two comparisons X-BeenThere: cerowrt-devel@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: Development issues regarding the cerowrt test router project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 19 Apr 2014 11:22:53 -0000 On 2014-04-19 05:26, Dave Taht wrote: > Could part of it be as simple as not checking for '<=' but only < in > txq_max_pending below? I don't see how that would make any meaningful difference in practice. By the way, did you test my patch? > in ath_tx_start: > > ath_txq_lock(sc, txq); > if (txq == sc->tx.txq_map[q] && > ++txq->pending_frames > sc->tx.txq_max_pending[q] && > !txq->stopped) { > ieee80211_stop_queue(sc->hw, q); > txq->stopped = true; > } > > in ath_txq_skb_done: > > if (txq->stopped && > txq->pending_frames < sc->tx.txq_max_pending[q]) { > ieee80211_wake_queue(sc->hw, q); > txq->stopped = false; > } > >