From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.codeaurora.org (smtp.codeaurora.org [198.145.29.96]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id CD6BB3CB35 for ; Wed, 10 Oct 2018 00:52:38 -0400 (EDT) Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 0B95D60C4D; Wed, 10 Oct 2018 04:52:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1539147158; bh=iOzgbAVzAIcSWA+ffRzZN/iGg+Lgn5t3ojuyNHUFy2I=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=gAqO6NGPkp9guRP95e918t7h3zf1Ua6Kto5TempWJsJojAKGEtDhmY2jg/pxLtrW1 9ejX1p/3hqXB5/lXwD4xTfMT+VyYz8GvYouMTeADnc49Q6ImWT9HqTtH5VUTHP7+GX W6yQceij9w7jwRSPsJ8oRyA7pmJ7YwqT3G9L3c0A= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_INVALID,DKIM_SIGNED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.codeaurora.org (Postfix) with ESMTP id AF4FB60769; Wed, 10 Oct 2018 04:52:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1539147157; bh=iOzgbAVzAIcSWA+ffRzZN/iGg+Lgn5t3ojuyNHUFy2I=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=mMdnO77ye/jxDCHMK+UQrUJ7r06ZYgr18ODAa3OsCm+pLBa/xNUbPxwFYzS7Gcx/f jpn2YQy1IFnBKvCumLimpHiV1fHEGCB/fknDnPq9s45omAgpffChmOSe3G3l79KDiz e0SZenzfzj4kNBVw/0Kw5u/tXap0Cpy3Z2m+pYbU= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Tue, 09 Oct 2018 21:52:37 -0700 From: Rajkumar Manoharan To: =?UTF-8?Q?Toke_H=C3=B8iland-J=C3=B8rgensen?= Cc: linux-wireless@vger.kernel.org, make-wifi-fast@lists.bufferbloat.net, Felix Fietkau , Kan Yan In-Reply-To: <153908837900.9471.5394468800857658136.stgit@alrua-kau> References: <153908805217.9471.9290979918041653328.stgit@alrua-kau> <153908837900.9471.5394468800857658136.stgit@alrua-kau> Message-ID: X-Sender: rmanohar@codeaurora.org User-Agent: Roundcube Webmail/1.2.5 Subject: Re: [Make-wifi-fast] [PATCH RFC v5 3/4] mac80211: Add airtime accounting and scheduling to TXQs X-BeenThere: make-wifi-fast@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2018 04:52:38 -0000 On 2018-10-09 05:32, Toke Høiland-Jørgensen wrote: > This adds airtime accounting and scheduling to the mac80211 TXQ > scheduler. A new callback, ieee80211_sta_register_airtime(), is added > that drivers can call to report airtime usage for stations. > > When airtime information is present, mac80211 will schedule TXQs > (through ieee80211_next_txq()) in a way that enforces airtime fairness > between active stations. This scheduling works the same way as the > ath9k > in-driver airtime fairness scheduling. If no airtime usage is reported > by the driver, the scheduler will default to round-robin scheduling. > > For drivers that don't control TXQ scheduling in software, a new API > function, ieee80211_txq_may_transmit(), is added which the driver can > use > to check if the TXQ is eligible for transmission, or should be > throttled to > enforce fairness. Calls to this function must also be enclosed in > ieee80211_txq_schedule_{start,end}() calls to ensure proper locking. > TXQs > that are throttled by ieee802111_txq_may_transmit() will be woken up > again > by a check added to the ieee80211_wake_txqs() tasklet. > Toke, I am observing soft lockup issues again with this new series while running traffic with 50 clients. I am continuing testing with earlier series along with snippet I shared. When driver operates in pull-mode, throttled txqs are marked and refilled in airtime_tasklet. This is causing major throughput drops and packet loss and I am suspecting the latency in replenishing deficit. Whereas in push-mode or in ath9k model, refill happens quicker at every packet indication as well as tx completion. I am planning to get rid of tasklet completely as it is only meant for pull-mode. It would be better to refill in may_transmit() itself. -Rajkumar