Received: by 2002:a05:7412:f589:b0:e2:908c:2ebd with SMTP id eh9csp772295rdb; Wed, 1 Nov 2023 02:07:47 -0700 (PDT) X-Google-Smtp-Source: AGHT+IF8qyNf1UWSXbp2dgh7vr7T2sTCb2GRL1boM8STKFFPL+C/EP5EwynVfsuNQPnmuhmYxNWy X-Received: by 2002:a17:90a:ed03:b0:27d:2ac3:befb with SMTP id kq3-20020a17090aed0300b0027d2ac3befbmr11292212pjb.18.1698829667240; Wed, 01 Nov 2023 02:07:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698829667; cv=none; d=google.com; s=arc-20160816; b=XGVHOoiu28HGR6SzXWOAEunQW0EzQhp+u0sff5FDKHWRvbKAbti+ZVrjfNjdJD/YPP uctIUh0+5sxtXxCps6Hhci21y9zVHrw3UzUx/uS2M6MfMwhZrNilAUO5l7ppI0iGymDo ad6LNEdZ+HqAgsQ/hWdv2KBkj9GkVSEbFmL9/J5gJUfjFxv9HfyniRidbA3UmhJnnOZc jIy3W1D7m5iKktl0TGOR+qsdDlpB1W2Lw2k6mfRlUhqIJljiGOXh8dC41Ur9L5qBNrjr 4HIk9M8GqEmqV63fZlZWpxyqKKFMjTWzHpgmA6h8/fOHBP8D4JFS95vdA0eraOPNl7fU cNzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=121BPoDMWPx6YwuwAG9rHJJa1dX+XjyAWL8FmojSdJ4=; fh=SD4K7KmCML1+E0vFwaF/iLKcDofeTwI30iqim53dMks=; b=Te1eXwkhS37/JyDJ2dwY+k25qrYoyezlw3wlHjXb3aiTUuA6dKwMtzZu/j6jqRbc70 JqQFTVIsHHa4r0VRsGACR0twBy8SUYx6vYy1PHFw7qXnCCFKIAR8WhocddJ6ySP7C5E4 heDCUJh4WGWjmf/rbTQkmxib9e2SPe66LZUEW1n+5afa/qULr58vgmq5KoqZbyplIGGY jRFql8RqIBt3QJ4IISIoQ8zZGlt2R3hECWNcgw3mYmupHKqnLPtLsYHq1kbwnz5/YV/8 9RKlPMOWkfVuR/DvOTPtk4ValXupMYEJPQjcVSFa2c4TB4CJ/4TmsF6m03jEVCJtW6qy ofMw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@wp.pl header.s=1024a header.b=boW0JQwW; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=wp.pl Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id k7-20020a17090a3cc700b002769b4b64e7si432392pjd.20.2023.11.01.02.07.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Nov 2023 02:07:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@wp.pl header.s=1024a header.b=boW0JQwW; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=wp.pl Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 7A61180CC126; Wed, 1 Nov 2023 02:07:42 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233285AbjKAJH0 (ORCPT + 52 others); Wed, 1 Nov 2023 05:07:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57562 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233146AbjKAJHY (ORCPT ); Wed, 1 Nov 2023 05:07:24 -0400 Received: from mx4.wp.pl (mx4.wp.pl [212.77.101.12]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5C4C4DE for ; Wed, 1 Nov 2023 02:07:15 -0700 (PDT) Received: (wp-smtpd smtp.wp.pl 43345 invoked from network); 1 Nov 2023 10:07:10 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wp.pl; s=1024a; t=1698829630; bh=121BPoDMWPx6YwuwAG9rHJJa1dX+XjyAWL8FmojSdJ4=; h=From:To:Cc:Subject; b=boW0JQwWixKRBrnQxXhH9WmgMnIRG0oNhvbtqhy53LpCMupo76+ghLbF4msQl49aO 1urI4HnxKVmYqA/yboohHnf5fwpECKpskLIWwgAxP5R//xTjtpIx3fX3LZ46ty+Qfq T7ipn3uC+YQGLj4LmoiPHJ5a4+p65TXZHpKfk2XM= Received: from 89-64-13-175.dynamic.chello.pl (HELO localhost) (stf_xl@wp.pl@[89.64.13.175]) (envelope-sender ) by smtp.wp.pl (WP-SMTPD) with ECDHE-RSA-AES256-GCM-SHA384 encrypted SMTP for ; 1 Nov 2023 10:07:10 +0100 Date: Wed, 1 Nov 2023 10:07:10 +0100 From: Stanislaw Gruszka To: Shiji Yang Cc: linux-wireless@vger.kernel.org, Kalle Valo Subject: Re: [PATCH 3/3] wifi: rt2x00: restart beacon queue when hardware reset Message-ID: <20231101090710.GB552433@wp.pl> References: <20231028121532.5397-1-yangshiji66@outlook.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-WP-MailID: 7de18f60d326fcc96716c3bb08d056fb X-WP-AV: skaner antywirusowy Poczty Wirtualnej Polski X-WP-SPAM: NO 0000000 [obOU] X-Spam-Status: No, score=-0.6 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Wed, 01 Nov 2023 02:07:42 -0700 (PDT) On Sat, Oct 28, 2023 at 08:15:32PM +0800, Shiji Yang wrote: > When a hardware reset is triggered, all registers are reset, so all > queues are forced to stop in hardware interface. However, mac80211 > will not automatically stop the queue. If we don't manually stop the > beacon queue, the queue will be deadlocked and unable to start again. > This patch fixes the issue where Apple devices cannot connect to the > AP after calling ieee80211_restart_hw(). Should not this be solved in mac80211 then? ieee80211_restart_work does a lot o diffrent things, why beconing is not also stoped/started there ? Regards Stanislaw > Signed-off-by: Shiji Yang > --- > drivers/net/wireless/ralink/rt2x00/rt2x00dev.c | 3 +++ > drivers/net/wireless/ralink/rt2x00/rt2x00mac.c | 4 +++- > 2 files changed, 6 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c > index 9a9cfd0ce..ac58a56c3 100644 > --- a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c > +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c > @@ -101,6 +101,8 @@ void rt2x00lib_disable_radio(struct rt2x00_dev *rt2x00dev) > rt2x00link_stop_tuner(rt2x00dev); > rt2x00queue_stop_queues(rt2x00dev); > rt2x00queue_flush_queues(rt2x00dev, true); > + if (test_bit(DEVICE_STATE_RESET, &rt2x00dev->flags)) > + rt2x00queue_stop_queue(rt2x00dev->bcn); > > /* > * Disable radio. > @@ -1286,6 +1288,7 @@ int rt2x00lib_start(struct rt2x00_dev *rt2x00dev) > rt2x00dev->intf_ap_count = 0; > rt2x00dev->intf_sta_count = 0; > rt2x00dev->intf_associated = 0; > + rt2x00dev->intf_beaconing = 0; > > /* Enable the radio */ > retval = rt2x00lib_enable_radio(rt2x00dev); > diff --git a/drivers/net/wireless/ralink/rt2x00/rt2x00mac.c b/drivers/net/wireless/ralink/rt2x00/rt2x00mac.c > index 4202c6517..6fcbf534a 100644 > --- a/drivers/net/wireless/ralink/rt2x00/rt2x00mac.c > +++ b/drivers/net/wireless/ralink/rt2x00/rt2x00mac.c > @@ -615,7 +615,9 @@ void rt2x00mac_bss_info_changed(struct ieee80211_hw *hw, > * and keep it running on other interfaces. > */ > rt2x00queue_clear_beacon(rt2x00dev, vif); > - } else if (bss_conf->enable_beacon && !intf->enable_beacon) { > + } else if (bss_conf->enable_beacon && > + (!intf->enable_beacon || > + test_bit(DEVICE_STATE_RESET, &rt2x00dev->flags))) { > rt2x00dev->intf_beaconing++; > intf->enable_beacon = true; > /* > -- > 2.39.2 >