Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp3288466pxf; Mon, 22 Mar 2021 02:47:56 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwxWZDM17RVjPPaY9IRpZ4gJ9diYFwwPvQY6i6k5tGhT9t/AGuigMOYgUZqIdJNY3goyAwT X-Received: by 2002:a17:906:1444:: with SMTP id q4mr18441120ejc.343.1616406476066; Mon, 22 Mar 2021 02:47:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1616406476; cv=none; d=google.com; s=arc-20160816; b=pmFl0PAH/covgbik7sC/0hdWOg12wyurp+Vkb/PuYO27RaXJSM0FYCYOQy1+znFf0A wIQk5j3cXTU9a5b9nQwNnoqE0cLn8RUeXTneJq3yCyAFCzQgrC5YphUy4Sj7tHlu+WC6 vBDvxXMbqWYLQisaj/+l0NkQg0Y+3S0tuPs+AHo9HdrolQJbhC/nknF0e88bX6sAYTj4 VWeiu+Dz34tBTYF203IAAW4zsNk+HL2KlWVroCBKxDZwF976GDjIjCiSya5DwmrQVJNs IyCBLGp+P66BRxuWefdJm5V6on56cHlUDhJoDxWS+m//eJAjLHnDpahsFQeW43vOm3RY 7UoA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:date:to:from:subject:message-id; bh=vZsZfnVSNXJM7GwOHS8UyZ1/45khdPr20UHgrOJXRy4=; b=zntphupDMUJ3jZLHjzdkhPf9oWlcOi5P+I1tOVMP6/VmlWsDQGX5ioa5hjwhgZw8a/ hWVxBH5FHdMdtpdytPKMd9rQEov//jsqyKE3nSLBKO+XTlYm0+XxYyE7rZ8vTZMq/8d+ +vYaWR3ASwPjZJjCDjLMTcAcXOS9hcqDYNjtNEka6+huzbzKq9aNFMjdaE25902Gnbli 2jgPXwX2NBLk3N8s6NL5JI8KeQZQ3yqX8FU4z+P0wzyxuNzILWw+3mzC+qK54IQVAKDP fnsAusUhCK2fqxws9uGzULy1k8mAKLialk9G5ygOjZ5tRp0mT2Ch3KQSeab+ZlwnxPcA uemw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b3si11013964ejg.74.2021.03.22.02.47.27; Mon, 22 Mar 2021 02:47:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230087AbhCVJqr (ORCPT + 99 others); Mon, 22 Mar 2021 05:46:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44312 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229952AbhCVJqd (ORCPT ); Mon, 22 Mar 2021 05:46:33 -0400 Received: from sipsolutions.net (s3.sipsolutions.net [IPv6:2a01:4f8:191:4433::2]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0EBCFC061574 for ; Mon, 22 Mar 2021 02:46:33 -0700 (PDT) Received: by sipsolutions.net with esmtpsa (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.94) (envelope-from ) id 1lOH8n-001foA-Gs; Mon, 22 Mar 2021 10:46:29 +0100 Message-ID: Subject: Re: [PATCH] mac80211: don't apply flow control on management frames From: Johannes Berg To: mbizon@freebox.fr, linux-wireless@vger.kernel.org Date: Mon, 22 Mar 2021 10:46:28 +0100 In-Reply-To: <5f037c3f8485a8c929548be6a153290ba9ae4f13.camel@freebox.fr> References: <20210319232800.0e876c800866.Id2b66eb5a17f3869b776c39b5ca713272ea09d5d@changeid> <5f037c3f8485a8c929548be6a153290ba9ae4f13.camel@freebox.fr> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.38.4 (3.38.4-1.fc33) MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-malware-bazaar: not-scanned Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org Hi, On Mon, 2021-03-22 at 10:43 +0100, Maxime Bizon wrote: > > Short-circuit the processing of management frames. To keep the > > impact minimal, only put them on the frags queue and check the > > tid == management only for doing that and to skip the airtime > > fairness checks, if applicable. > > After your patch, what are the actual effects of HW_STA_MMPDU_TXQ and > HW_BUFF_MMPDU_TXQ ? Well, my patch doesn't change the effect of those significantly. The idea for iwlwifi was that it doesn't actually like ->tx() to get called, but much prefers a TXQ where the frame is, and then it can pull it whenever it can transmit it. This was the key requirement here, and it doesn't change: instead of tx() getting called with the frames, the frames go to the TXQ instead and wake_tx_queue() is called, and then the driver later pulls the frames and pushes them to the hardware. What does change is that management frames are no longer subject to codel and inter-flow issues, and also note that the hash of a management frame isn't actually well-defined. johannes