From patchwork Sat Jul 5 19:33:47 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Emmanuel Grumbach X-Patchwork-Id: 4488761 Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id CDCF49F358 for ; Sat, 5 Jul 2014 19:34:01 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 105E720251 for ; Sat, 5 Jul 2014 19:34:01 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 286B620219 for ; Sat, 5 Jul 2014 19:33:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932217AbaGETd5 (ORCPT ); Sat, 5 Jul 2014 15:33:57 -0400 Received: from mail-wg0-f47.google.com ([74.125.82.47]:35628 "EHLO mail-wg0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755874AbaGETd4 (ORCPT ); Sat, 5 Jul 2014 15:33:56 -0400 Received: by mail-wg0-f47.google.com with SMTP id l18so102626wgh.6 for ; Sat, 05 Jul 2014 12:33:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=ateXPsuMcYNXVOLrD8AhJTCcGicmKmXvj+p4ZnV6zxE=; b=mMGYeKsTvGIsWiFbMyLJyn/A5lzyz2UrrwPoCGAjAtN6xjyTqbBv3PqWf8dOhfZN20 0ljPvteQWY6MBbznjMSGpyNWIrrJHUvdTWyBGS3ZVn3Mh35kIPH2Ch73SbDqwGd4TW7E 3N3iSWSoKCh7ezkF64F6B3SjDSeBhcqXQMP7K6wU3pssKEX9GpLCSe8rQkYDYdQVammr sGbQxRIDvZdF8aX9xjAvDBjPyBhX1AVJMZjiJJ0Hk7EGnk5vAh3kP03plFtGR6rSlfQc DE7BYq5TZfRxWmCQ9fvrsUxKcqNWL/svSB3qhjBFDFpTQPDszv4NLhj++QOOjN6qBwDS iEtA== X-Received: by 10.194.92.196 with SMTP id co4mr21037744wjb.4.1404588835691; Sat, 05 Jul 2014 12:33:55 -0700 (PDT) Received: from localhost.localdomain (109-186-76-70.bb.netvision.net.il. [109.186.76.70]) by mx.google.com with ESMTPSA id by3sm58249563wjc.10.2014.07.05.12.33.54 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 05 Jul 2014 12:33:55 -0700 (PDT) From: Emmanuel Grumbach To: linux-wireless@vger.kernel.org Cc: Ilan Peer , Emmanuel Grumbach Subject: [PATCH 1/3] iwlwifi: mvm: Fix broadcast filtering Date: Sat, 5 Jul 2014 22:33:47 +0300 Message-Id: <1404588829-14168-1-git-send-email-egrumbach@gmail.com> X-Mailer: git-send-email 1.8.3.2 In-Reply-To: <53B852D4.5060109@gmail.com> References: <53B852D4.5060109@gmail.com> Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Ilan Peer Current code did not allow sending the broadcast filtering command for P2P Client interfaces. However, this was not enough, since once broadcast filtering command was issued over the station interface after the P2P Client connected, the command also attached the filters to the P2P Client MAC which is not allowed (FW ASSERT 1063). Fix this skipping P2P Client interfaces when constructing the broadcast filtering command Signed-off-by: Ilan Peer Reviewed-by: ArikX Nemtsov Signed-off-by: Emmanuel Grumbach --- drivers/net/wireless/iwlwifi/mvm/mac80211.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/net/wireless/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/iwlwifi/mvm/mac80211.c index 1cef708..9bfb906 100644 --- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c +++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c @@ -1166,8 +1166,12 @@ static void iwl_mvm_bcast_filter_iterator(void *_data, u8 *mac, bcast_mac = &cmd->macs[mvmvif->id]; - /* enable filtering only for associated stations */ - if (vif->type != NL80211_IFTYPE_STATION || !vif->bss_conf.assoc) + /* + * enable filtering only for associated stations, but not for P2P + * Clients + */ + if (vif->type != NL80211_IFTYPE_STATION || vif->p2p || + !vif->bss_conf.assoc) return; bcast_mac->default_discard = 1; @@ -1244,10 +1248,6 @@ static int iwl_mvm_configure_bcast_filter(struct iwl_mvm *mvm, if (!(mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_BCAST_FILTERING)) return 0; - /* bcast filtering isn't supported for P2P client */ - if (vif->p2p) - return 0; - if (!iwl_mvm_bcast_filter_build_cmd(mvm, &cmd)) return 0;