Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp1806966imm; Mon, 3 Sep 2018 09:57:15 -0700 (PDT) X-Google-Smtp-Source: ANB0VdYpgDWJEFx59njGKsp2cuXP8LL1OoG0K+W7Q++u42Iix6fdHGHWEm88iTBwK8JK3mtKwYXj X-Received: by 2002:a62:20f:: with SMTP id 15-v6mr30768150pfc.100.1535993835570; Mon, 03 Sep 2018 09:57:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1535993835; cv=none; d=google.com; s=arc-20160816; b=t3mqUwxXb5mcgN612nOBH4/+vvsysIeN5n85EM+QjUig6FrjGUFFYHN8QEjzujfbkk D8lOe7wSH48UIPHig+q5S/mINIGxpFneCOAaBtl+angGmziY/xxv8FsZju9RdHmhGQK1 T8XrgldEfz/fZM2WU2Un/nT3yx5PkRTv72VIWswPyxSpCFmBCjuRi3ddIyho9DkpFE+u 5N3jnKV2zmohzZaGv4jxUUtUCadxT65d2S4fa8srrj3avV4OvwwvVdjlI0u7OCEh6Nxh aO3koCo0ACcRhoMCVatosgwQZXBPqysSuoSvf3oIAIQcCq5mwaGZC/UZSdd+tcPWeZvT Cefg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=oP7hZMZm7WcM6UtYrXhCGfZu2z/qfcWs6TPOLh5VFxY=; b=WFQfzLxBST32k2b3rKVA41yCKn3MsbYrH44Rt4TocylIlPEmzSlepnJ2AoNqiCNx5c v2Nqu8P6lt45JqTaaC1Dskg0pHz89PRZVzDYmHdXlcVRd+lxrxfJTHBfE3KZ9hxwL8Gv 98yCBre+GVttulzxePX098I9tr0H9vDUdE0P+ctg17pocBWQHsls63gbCCp7w7hrc1rR RSGba3gsIpxBzlDuclZY74rArhcRP36bvg2Hu+3d/1sMmWoErIVjZi2IoOPlfyf5n8ZM fc0CidD291/UitDDXgy1ezOZHIPFE5sSluS/Ua8dWf11h0dJwxfVMU2V7icyITar1W6o cEwQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e14-v6si18068350pgg.345.2018.09.03.09.57.00; Mon, 03 Sep 2018 09:57:15 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728919AbeICVOz (ORCPT + 99 others); Mon, 3 Sep 2018 17:14:55 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:38236 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728398AbeICVOy (ORCPT ); Mon, 3 Sep 2018 17:14:54 -0400 Received: from localhost (ip-213-127-74-90.ip.prioritytelecom.net [213.127.74.90]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id D57FDCF8; Mon, 3 Sep 2018 16:53:56 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Manikanta Pubbisetty , Johannes Berg , Sasha Levin Subject: [PATCH 4.4 06/80] mac80211: add stations tied to AP_VLANs during hw reconfig Date: Mon, 3 Sep 2018 18:48:44 +0200 Message-Id: <20180903164934.421677038@linuxfoundation.org> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180903164934.171677301@linuxfoundation.org> References: <20180903164934.171677301@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: "mpubbise@codeaurora.org" [ Upstream commit 19103a4bfb42f320395daa5616ece3e89e759d63 ] As part of hw reconfig, only stations linked to AP interfaces are added back to the driver ignoring those which are tied to AP_VLAN interfaces. It is true that there could be stations tied to the AP_VLAN interface while serving 4addr clients or when using AP_VLAN for VLAN operations; we should be adding these stations back to the driver as part of hw reconfig, failing to do so can cause functional issues. In the case of ath10k driver, the following errors were observed. ath10k_pci : failed to install key for non-existent peer XX:XX:XX:XX:XX:XX Workqueue: events_freezable ieee80211_restart_work [mac80211] (unwind_backtrace) from (show_stack+0x10/0x14) (show_stack) (dump_stack+0x80/0xa0) (dump_stack) (warn_slowpath_common+0x68/0x8c) (warn_slowpath_common) (warn_slowpath_null+0x18/0x20) (warn_slowpath_null) (ieee80211_enable_keys+0x88/0x154 [mac80211]) (ieee80211_enable_keys) (ieee80211_reconfig+0xc90/0x19c8 [mac80211]) (ieee80211_reconfig]) (ieee80211_restart_work+0x8c/0xa0 [mac80211]) (ieee80211_restart_work) (process_one_work+0x284/0x488) (process_one_work) (worker_thread+0x228/0x360) (worker_thread) (kthread+0xd8/0xec) (kthread) (ret_from_fork+0x14/0x24) Also while bringing down the AP VAP, WARN_ONs and errors related to peer removal were observed. ath10k_pci : failed to clear all peer wep keys for vdev 0: -2 ath10k_pci : failed to disassociate station: 8c:fd:f0:0a:8c:f5 vdev 0: -2 (unwind_backtrace) (show_stack+0x10/0x14) (show_stack) (dump_stack+0x80/0xa0) (dump_stack) (warn_slowpath_common+0x68/0x8c) (warn_slowpath_common) (warn_slowpath_null+0x18/0x20) (warn_slowpath_null) (sta_set_sinfo+0xb98/0xc9c [mac80211]) (sta_set_sinfo [mac80211]) (__sta_info_flush+0xf0/0x134 [mac80211]) (__sta_info_flush [mac80211]) (ieee80211_stop_ap+0xe8/0x390 [mac80211]) (ieee80211_stop_ap [mac80211]) (__cfg80211_stop_ap+0xe0/0x3dc [cfg80211]) (__cfg80211_stop_ap [cfg80211]) (cfg80211_stop_ap+0x30/0x44 [cfg80211]) (cfg80211_stop_ap [cfg80211]) (genl_rcv_msg+0x274/0x30c) (genl_rcv_msg) (netlink_rcv_skb+0x58/0xac) (netlink_rcv_skb) (genl_rcv+0x20/0x34) (genl_rcv) (netlink_unicast+0x11c/0x204) (netlink_unicast) (netlink_sendmsg+0x30c/0x370) (netlink_sendmsg) (sock_sendmsg+0x70/0x84) (sock_sendmsg) (___sys_sendmsg.part.3+0x188/0x228) (___sys_sendmsg.part.3) (__sys_sendmsg+0x4c/0x70) (__sys_sendmsg) (ret_fast_syscall+0x0/0x44) These issues got fixed by adding the stations which are tied to AP_VLANs back to the driver. Signed-off-by: Manikanta Pubbisetty Signed-off-by: Johannes Berg Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- net/mac80211/util.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- a/net/mac80211/util.c +++ b/net/mac80211/util.c @@ -2006,7 +2006,8 @@ int ieee80211_reconfig(struct ieee80211_ if (!sta->uploaded) continue; - if (sta->sdata->vif.type != NL80211_IFTYPE_AP) + if (sta->sdata->vif.type != NL80211_IFTYPE_AP && + sta->sdata->vif.type != NL80211_IFTYPE_AP_VLAN) continue; for (state = IEEE80211_STA_NOTEXIST;