From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-x22d.google.com (mail-wm0-x22d.google.com [IPv6:2a00:1450:400c:c09::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id C7DCE3B2AE for ; Thu, 31 Mar 2016 02:39:39 -0400 (EDT) Received: by mail-wm0-x22d.google.com with SMTP id 191so114233841wmq.0 for ; Wed, 30 Mar 2016 23:39:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tieto.com; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-transfer-encoding; bh=nXZR3vxRBb7aNF4kgpXdoOAFy7vW/E0T7ONuDsQSxxM=; b=s9a72fzmZBfx9T4EpPvG3j+yBQ0H2wWiI80ggmDPUHw7kzmp8V9iMVa2bsX0Gyg3PO FjxEst40mnfKYO223tlyNHWCUOTAqAi4d5FRxYingMyEG1rmgcbS5uq1CH5ku7RbGqP/ lzpYH2M8lfvQToZuyxKzo4Vq5+rgzbtqyNsCo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-transfer-encoding; bh=nXZR3vxRBb7aNF4kgpXdoOAFy7vW/E0T7ONuDsQSxxM=; b=hhBUEK1QP56ZVBkX97v4FlyVfo2mUFzGU2H0qntrVDaPGIGJREaAUJ2bgPJcKK8vJd hzw7UFLL9Xe2pEiN6iBr+Cz8c5buPDLhynE4tu5MZSpA6K+MSvDAgpjBe9XAx2RFR9Uf D/5zZaEzoF4NUmj/BwRvC+iSfoxXPWqfHSaqxynu5yCcNVwIIA2ATyevOejWauqYN4Bn FQrtDcwCm2H7V+8Skc53e/1PyUkb8JGBEh85nDok/TADhF2wvb7SHFouAAO+91AIP1nS d9xjhFrL08N3e9/RNV4mvpo45/P4GgKGpCg0VmBtEmxlY7SLd+Sdn7Z96L711ZR0FecH BKFg== X-Gm-Message-State: AD7BkJIbiA3KF1qpqLlliMzZH6cNlGRnGScFOGsrkO9rxOQADboRlW0R79zdRaOYr34MF7K3SBS8Ht3m8zKdD10IzbayllePOCeYmSStK6VfELNoskJU+R9/Sj12LlQceDlLSdCxAv4SXlO8bMkaCMeaaORx8oW5GQGsKg== MIME-Version: 1.0 X-Received: by 10.194.81.103 with SMTP id z7mr1301325wjx.25.1459406378789; Wed, 30 Mar 2016 23:39:38 -0700 (PDT) Received: by 10.194.115.3 with HTTP; Wed, 30 Mar 2016 23:39:38 -0700 (PDT) In-Reply-To: <56FBF0A4.5090508@candelatech.com> References: <1458898743-21118-1-git-send-email-michal.kazior@tieto.com> <56FAA518.2000805@candelatech.com> <56FBF0A4.5090508@candelatech.com> Date: Thu, 31 Mar 2016 08:39:38 +0200 Message-ID: From: Michal Kazior To: Ben Greear Cc: Dave Taht , "ath10k@lists.infradead.org" , linux-wireless , make-wifi-fast@lists.bufferbloat.net, "codel@lists.bufferbloat.net" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-DomainID: tieto.com Subject: Re: [Make-wifi-fast] [RFC] ath10k: implement dql for htt tx 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: Thu, 31 Mar 2016 06:39:39 -0000 On 30 March 2016 at 17:28, Ben Greear wrote: > On 03/30/2016 02:22 AM, Michal Kazior wrote: >> >> On 29 March 2016 at 17:54, Ben Greear wrote: >>> >>> On 03/29/2016 12:49 AM, Michal Kazior wrote: >>> >>>>> if you are getting a pure codel result of 160ms, that means the >>>>> implementation is broken. But I think (after having read your >>>>> description twice), the baseline result today of 160ms of queuing was >>>>> with a fq_codel *qdisc* doing the work on top of huge buffers, >>>> >>>> >>>> >>>> Yes. The 160ms is with fq_codel qdisc with ath10k doing DQL at 6mbps. >>>> Without DQL ath10k would clog up all tx slots (1424 of them) with >>>> frames. At 6mbps you typically want/need a handful (5-10) of frames to >>>> be queued. >>> >>> >>> >>> Have you actually verified you can use all tx slots? >> >> >> It works in most cases. I guess you're suspecting some of your >> tx(flushing?) problems might be induced by overcommiting? >> >>> The way the >>> firmware uses it's tx buffers I think you may not be able to actually >>> do that...and in practice, you will get a lot fewer usable tx-buffers >>> than configured.... >> >> >> Could be, e.g. I'm aware management frames are kind of a special case >> in recent firmware revisions. >> >> What would/do you expect firmware would/will do when we overcommit? >> The driver does advertise number of HTT tx slots so I would expect it >> to work fine if it didn't crash during boot. > > > The firmware will return something like tx-dropped immediately. The reas= on > is that the firmware keeps more than one internal priority queue, and in > general, reserves > some of the tx-descriptors for high priority. > > So, you never see tx-queues completely full in the driver, so tx queues a= re > not stopped farther up the stack. > > Possibly I am confused about some of this, so I'm quite curious if you ev= er > see > tx-queues determined to be full in the ath10k driver. I haven't analyzed it this much. Nevertheless it's good to know we might be overcommiting on the HTT Tx. One more reason to use DQL and/or schedule tx in a smarter way. Micha=C5=82