public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org, Luca Coelho <luciano.coelho@intel.com>,
	Kalle Valo <kvalo@kernel.org>
Subject: [PATCH 5.16 076/227] iwlwifi: remove deprecated broadcast filtering feature
Date: Mon, 21 Feb 2022 09:48:15 +0100	[thread overview]
Message-ID: <20220221084937.399520230@linuxfoundation.org> (raw)
In-Reply-To: <20220221084934.836145070@linuxfoundation.org>

From: Luca Coelho <luciano.coelho@intel.com>

commit 92883a524ae918736a7b8acef98698075507b8c1 upstream.

This feature has been deprecated and should not be used anymore.  With
newer firmwares, namely *-67.ucode and above, trying to use it causes an
assertion failure in the FW, similar to this:

[Tue Jan 11 20:05:24 2022] iwlwifi 0000:04:00.0: 0x00001062 | ADVANCED_SYSASSERT

In order to prevent this feature from being used, remove it entirely
and get rid of the Kconfig option that
enables it (IWLWIFI_BCAST_FILTERING).

Fixes: cbaa6aeedee5 ("iwlwifi: bump FW API to 67 for AX devices")
Link: https://bugzilla.kernel.org/show_bug.cgi?id=215488
Cc: stable@vger.kernel.org # 5.16.x
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/iwlwifi.20220128144623.9241e049f13e.Ia4f282813ca2ddd24c13427823519113f2bbebf2@changeid
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/wireless/intel/iwlwifi/Kconfig           |   13 -
 drivers/net/wireless/intel/iwlwifi/fw/api/commands.h |    5 
 drivers/net/wireless/intel/iwlwifi/fw/api/filter.h   |   88 ------
 drivers/net/wireless/intel/iwlwifi/fw/file.h         |    2 
 drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c     |  203 ----------------
 drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c    |  240 -------------------
 drivers/net/wireless/intel/iwlwifi/mvm/mvm.h         |   13 -
 drivers/net/wireless/intel/iwlwifi/mvm/ops.c         |    1 
 8 files changed, 565 deletions(-)

--- a/drivers/net/wireless/intel/iwlwifi/Kconfig
+++ b/drivers/net/wireless/intel/iwlwifi/Kconfig
@@ -79,19 +79,6 @@ config IWLWIFI_OPMODE_MODULAR
 comment "WARNING: iwlwifi is useless without IWLDVM or IWLMVM"
 	depends on IWLDVM=n && IWLMVM=n
 
-config IWLWIFI_BCAST_FILTERING
-	bool "Enable broadcast filtering"
-	depends on IWLMVM
-	help
-	  Say Y here to enable default bcast filtering configuration.
-
-	  Enabling broadcast filtering will drop any incoming wireless
-	  broadcast frames, except some very specific predefined
-	  patterns (e.g. incoming arp requests).
-
-	  If unsure, don't enable this option, as some programs might
-	  expect incoming broadcasts for their normal operations.
-
 menu "Debugging Options"
 
 config IWLWIFI_DEBUG
--- a/drivers/net/wireless/intel/iwlwifi/fw/api/commands.h
+++ b/drivers/net/wireless/intel/iwlwifi/fw/api/commands.h
@@ -506,11 +506,6 @@ enum iwl_legacy_cmds {
 	DEBUG_LOG_MSG = 0xf7,
 
 	/**
-	 * @BCAST_FILTER_CMD: &struct iwl_bcast_filter_cmd
-	 */
-	BCAST_FILTER_CMD = 0xcf,
-
-	/**
 	 * @MCAST_FILTER_CMD: &struct iwl_mcast_filter_cmd
 	 */
 	MCAST_FILTER_CMD = 0xd0,
--- a/drivers/net/wireless/intel/iwlwifi/fw/api/filter.h
+++ b/drivers/net/wireless/intel/iwlwifi/fw/api/filter.h
@@ -36,92 +36,4 @@ struct iwl_mcast_filter_cmd {
 	u8 addr_list[0];
 } __packed; /* MCAST_FILTERING_CMD_API_S_VER_1 */
 
-#define MAX_BCAST_FILTERS 8
-#define MAX_BCAST_FILTER_ATTRS 2
-
-/**
- * enum iwl_mvm_bcast_filter_attr_offset - written by fw for each Rx packet
- * @BCAST_FILTER_OFFSET_PAYLOAD_START: offset is from payload start.
- * @BCAST_FILTER_OFFSET_IP_END: offset is from ip header end (i.e.
- *	start of ip payload).
- */
-enum iwl_mvm_bcast_filter_attr_offset {
-	BCAST_FILTER_OFFSET_PAYLOAD_START = 0,
-	BCAST_FILTER_OFFSET_IP_END = 1,
-};
-
-/**
- * struct iwl_fw_bcast_filter_attr - broadcast filter attribute
- * @offset_type:	&enum iwl_mvm_bcast_filter_attr_offset.
- * @offset:	starting offset of this pattern.
- * @reserved1:	reserved
- * @val:	value to match - big endian (MSB is the first
- *		byte to match from offset pos).
- * @mask:	mask to match (big endian).
- */
-struct iwl_fw_bcast_filter_attr {
-	u8 offset_type;
-	u8 offset;
-	__le16 reserved1;
-	__be32 val;
-	__be32 mask;
-} __packed; /* BCAST_FILTER_ATT_S_VER_1 */
-
-/**
- * enum iwl_mvm_bcast_filter_frame_type - filter frame type
- * @BCAST_FILTER_FRAME_TYPE_ALL: consider all frames.
- * @BCAST_FILTER_FRAME_TYPE_IPV4: consider only ipv4 frames
- */
-enum iwl_mvm_bcast_filter_frame_type {
-	BCAST_FILTER_FRAME_TYPE_ALL = 0,
-	BCAST_FILTER_FRAME_TYPE_IPV4 = 1,
-};
-
-/**
- * struct iwl_fw_bcast_filter - broadcast filter
- * @discard: discard frame (1) or let it pass (0).
- * @frame_type: &enum iwl_mvm_bcast_filter_frame_type.
- * @reserved1: reserved
- * @num_attrs: number of valid attributes in this filter.
- * @attrs: attributes of this filter. a filter is considered matched
- *	only when all its attributes are matched (i.e. AND relationship)
- */
-struct iwl_fw_bcast_filter {
-	u8 discard;
-	u8 frame_type;
-	u8 num_attrs;
-	u8 reserved1;
-	struct iwl_fw_bcast_filter_attr attrs[MAX_BCAST_FILTER_ATTRS];
-} __packed; /* BCAST_FILTER_S_VER_1 */
-
-/**
- * struct iwl_fw_bcast_mac - per-mac broadcast filtering configuration.
- * @default_discard: default action for this mac (discard (1) / pass (0)).
- * @reserved1: reserved
- * @attached_filters: bitmap of relevant filters for this mac.
- */
-struct iwl_fw_bcast_mac {
-	u8 default_discard;
-	u8 reserved1;
-	__le16 attached_filters;
-} __packed; /* BCAST_MAC_CONTEXT_S_VER_1 */
-
-/**
- * struct iwl_bcast_filter_cmd - broadcast filtering configuration
- * @disable: enable (0) / disable (1)
- * @max_bcast_filters: max number of filters (MAX_BCAST_FILTERS)
- * @max_macs: max number of macs (NUM_MAC_INDEX_DRIVER)
- * @reserved1: reserved
- * @filters: broadcast filters
- * @macs: broadcast filtering configuration per-mac
- */
-struct iwl_bcast_filter_cmd {
-	u8 disable;
-	u8 max_bcast_filters;
-	u8 max_macs;
-	u8 reserved1;
-	struct iwl_fw_bcast_filter filters[MAX_BCAST_FILTERS];
-	struct iwl_fw_bcast_mac macs[NUM_MAC_INDEX_DRIVER];
-} __packed; /* BCAST_FILTERING_HCMD_API_S_VER_1 */
-
 #endif /* __iwl_fw_api_filter_h__ */
--- a/drivers/net/wireless/intel/iwlwifi/fw/file.h
+++ b/drivers/net/wireless/intel/iwlwifi/fw/file.h
@@ -182,7 +182,6 @@ struct iwl_ucode_capa {
  * @IWL_UCODE_TLV_FLAGS_NEW_NSOFFL_LARGE: new NS offload (large version)
  * @IWL_UCODE_TLV_FLAGS_UAPSD_SUPPORT: General support for uAPSD
  * @IWL_UCODE_TLV_FLAGS_P2P_PS_UAPSD: P2P client supports uAPSD power save
- * @IWL_UCODE_TLV_FLAGS_BCAST_FILTERING: uCode supports broadcast filtering.
  * @IWL_UCODE_TLV_FLAGS_EBS_SUPPORT: this uCode image supports EBS.
  */
 enum iwl_ucode_tlv_flag {
@@ -197,7 +196,6 @@ enum iwl_ucode_tlv_flag {
 	IWL_UCODE_TLV_FLAGS_UAPSD_SUPPORT	= BIT(24),
 	IWL_UCODE_TLV_FLAGS_EBS_SUPPORT		= BIT(25),
 	IWL_UCODE_TLV_FLAGS_P2P_PS_UAPSD	= BIT(26),
-	IWL_UCODE_TLV_FLAGS_BCAST_FILTERING	= BIT(29),
 };
 
 typedef unsigned int __bitwise iwl_ucode_tlv_api_t;
--- a/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
@@ -1361,189 +1361,6 @@ static ssize_t iwl_dbgfs_dbg_time_point_
 	return count;
 }
 
-#define ADD_TEXT(...) pos += scnprintf(buf + pos, bufsz - pos, __VA_ARGS__)
-#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
-static ssize_t iwl_dbgfs_bcast_filters_read(struct file *file,
-					    char __user *user_buf,
-					    size_t count, loff_t *ppos)
-{
-	struct iwl_mvm *mvm = file->private_data;
-	struct iwl_bcast_filter_cmd cmd;
-	const struct iwl_fw_bcast_filter *filter;
-	char *buf;
-	int bufsz = 1024;
-	int i, j, pos = 0;
-	ssize_t ret;
-
-	buf = kzalloc(bufsz, GFP_KERNEL);
-	if (!buf)
-		return -ENOMEM;
-
-	mutex_lock(&mvm->mutex);
-	if (!iwl_mvm_bcast_filter_build_cmd(mvm, &cmd)) {
-		ADD_TEXT("None\n");
-		mutex_unlock(&mvm->mutex);
-		goto out;
-	}
-	mutex_unlock(&mvm->mutex);
-
-	for (i = 0; cmd.filters[i].attrs[0].mask; i++) {
-		filter = &cmd.filters[i];
-
-		ADD_TEXT("Filter [%d]:\n", i);
-		ADD_TEXT("\tDiscard=%d\n", filter->discard);
-		ADD_TEXT("\tFrame Type: %s\n",
-			 filter->frame_type ? "IPv4" : "Generic");
-
-		for (j = 0; j < ARRAY_SIZE(filter->attrs); j++) {
-			const struct iwl_fw_bcast_filter_attr *attr;
-
-			attr = &filter->attrs[j];
-			if (!attr->mask)
-				break;
-
-			ADD_TEXT("\tAttr [%d]: offset=%d (from %s), mask=0x%x, value=0x%x reserved=0x%x\n",
-				 j, attr->offset,
-				 attr->offset_type ? "IP End" :
-						     "Payload Start",
-				 be32_to_cpu(attr->mask),
-				 be32_to_cpu(attr->val),
-				 le16_to_cpu(attr->reserved1));
-		}
-	}
-out:
-	ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos);
-	kfree(buf);
-	return ret;
-}
-
-static ssize_t iwl_dbgfs_bcast_filters_write(struct iwl_mvm *mvm, char *buf,
-					     size_t count, loff_t *ppos)
-{
-	int pos, next_pos;
-	struct iwl_fw_bcast_filter filter = {};
-	struct iwl_bcast_filter_cmd cmd;
-	u32 filter_id, attr_id, mask, value;
-	int err = 0;
-
-	if (sscanf(buf, "%d %hhi %hhi %n", &filter_id, &filter.discard,
-		   &filter.frame_type, &pos) != 3)
-		return -EINVAL;
-
-	if (filter_id >= ARRAY_SIZE(mvm->dbgfs_bcast_filtering.cmd.filters) ||
-	    filter.frame_type > BCAST_FILTER_FRAME_TYPE_IPV4)
-		return -EINVAL;
-
-	for (attr_id = 0; attr_id < ARRAY_SIZE(filter.attrs);
-	     attr_id++) {
-		struct iwl_fw_bcast_filter_attr *attr =
-				&filter.attrs[attr_id];
-
-		if (pos >= count)
-			break;
-
-		if (sscanf(&buf[pos], "%hhi %hhi %i %i %n",
-			   &attr->offset, &attr->offset_type,
-			   &mask, &value, &next_pos) != 4)
-			return -EINVAL;
-
-		attr->mask = cpu_to_be32(mask);
-		attr->val = cpu_to_be32(value);
-		if (mask)
-			filter.num_attrs++;
-
-		pos += next_pos;
-	}
-
-	mutex_lock(&mvm->mutex);
-	memcpy(&mvm->dbgfs_bcast_filtering.cmd.filters[filter_id],
-	       &filter, sizeof(filter));
-
-	/* send updated bcast filtering configuration */
-	if (iwl_mvm_firmware_running(mvm) &&
-	    mvm->dbgfs_bcast_filtering.override &&
-	    iwl_mvm_bcast_filter_build_cmd(mvm, &cmd))
-		err = iwl_mvm_send_cmd_pdu(mvm, BCAST_FILTER_CMD, 0,
-					   sizeof(cmd), &cmd);
-	mutex_unlock(&mvm->mutex);
-
-	return err ?: count;
-}
-
-static ssize_t iwl_dbgfs_bcast_filters_macs_read(struct file *file,
-						 char __user *user_buf,
-						 size_t count, loff_t *ppos)
-{
-	struct iwl_mvm *mvm = file->private_data;
-	struct iwl_bcast_filter_cmd cmd;
-	char *buf;
-	int bufsz = 1024;
-	int i, pos = 0;
-	ssize_t ret;
-
-	buf = kzalloc(bufsz, GFP_KERNEL);
-	if (!buf)
-		return -ENOMEM;
-
-	mutex_lock(&mvm->mutex);
-	if (!iwl_mvm_bcast_filter_build_cmd(mvm, &cmd)) {
-		ADD_TEXT("None\n");
-		mutex_unlock(&mvm->mutex);
-		goto out;
-	}
-	mutex_unlock(&mvm->mutex);
-
-	for (i = 0; i < ARRAY_SIZE(cmd.macs); i++) {
-		const struct iwl_fw_bcast_mac *mac = &cmd.macs[i];
-
-		ADD_TEXT("Mac [%d]: discard=%d attached_filters=0x%x\n",
-			 i, mac->default_discard, mac->attached_filters);
-	}
-out:
-	ret = simple_read_from_buffer(user_buf, count, ppos, buf, pos);
-	kfree(buf);
-	return ret;
-}
-
-static ssize_t iwl_dbgfs_bcast_filters_macs_write(struct iwl_mvm *mvm,
-						  char *buf, size_t count,
-						  loff_t *ppos)
-{
-	struct iwl_bcast_filter_cmd cmd;
-	struct iwl_fw_bcast_mac mac = {};
-	u32 mac_id, attached_filters;
-	int err = 0;
-
-	if (!mvm->bcast_filters)
-		return -ENOENT;
-
-	if (sscanf(buf, "%d %hhi %i", &mac_id, &mac.default_discard,
-		   &attached_filters) != 3)
-		return -EINVAL;
-
-	if (mac_id >= ARRAY_SIZE(cmd.macs) ||
-	    mac.default_discard > 1 ||
-	    attached_filters >= BIT(ARRAY_SIZE(cmd.filters)))
-		return -EINVAL;
-
-	mac.attached_filters = cpu_to_le16(attached_filters);
-
-	mutex_lock(&mvm->mutex);
-	memcpy(&mvm->dbgfs_bcast_filtering.cmd.macs[mac_id],
-	       &mac, sizeof(mac));
-
-	/* send updated bcast filtering configuration */
-	if (iwl_mvm_firmware_running(mvm) &&
-	    mvm->dbgfs_bcast_filtering.override &&
-	    iwl_mvm_bcast_filter_build_cmd(mvm, &cmd))
-		err = iwl_mvm_send_cmd_pdu(mvm, BCAST_FILTER_CMD, 0,
-					   sizeof(cmd), &cmd);
-	mutex_unlock(&mvm->mutex);
-
-	return err ?: count;
-}
-#endif
-
 #define MVM_DEBUGFS_WRITE_FILE_OPS(name, bufsz) \
 	_MVM_DEBUGFS_WRITE_FILE_OPS(name, bufsz, struct iwl_mvm)
 #define MVM_DEBUGFS_READ_WRITE_FILE_OPS(name, bufsz) \
@@ -1873,11 +1690,6 @@ MVM_DEBUGFS_WRITE_FILE_OPS(inject_beacon
 
 MVM_DEBUGFS_READ_FILE_OPS(uapsd_noagg_bssids);
 
-#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
-MVM_DEBUGFS_READ_WRITE_FILE_OPS(bcast_filters, 256);
-MVM_DEBUGFS_READ_WRITE_FILE_OPS(bcast_filters_macs, 256);
-#endif
-
 #ifdef CONFIG_ACPI
 MVM_DEBUGFS_READ_FILE_OPS(sar_geo_profile);
 #endif
@@ -2088,21 +1900,6 @@ void iwl_mvm_dbgfs_register(struct iwl_m
 
 	MVM_DEBUGFS_ADD_FILE(uapsd_noagg_bssids, mvm->debugfs_dir, S_IRUSR);
 
-#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
-	if (mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_BCAST_FILTERING) {
-		bcast_dir = debugfs_create_dir("bcast_filtering",
-					       mvm->debugfs_dir);
-
-		debugfs_create_bool("override", 0600, bcast_dir,
-				    &mvm->dbgfs_bcast_filtering.override);
-
-		MVM_DEBUGFS_ADD_FILE_ALIAS("filters", bcast_filters,
-					   bcast_dir, 0600);
-		MVM_DEBUGFS_ADD_FILE_ALIAS("macs", bcast_filters_macs,
-					   bcast_dir, 0600);
-	}
-#endif
-
 #ifdef CONFIG_PM_SLEEP
 	MVM_DEBUGFS_ADD_FILE(d3_test, mvm->debugfs_dir, 0400);
 	debugfs_create_bool("d3_wake_sysassert", 0600, mvm->debugfs_dir,
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
@@ -55,79 +55,6 @@ static const struct ieee80211_iface_comb
 	},
 };
 
-#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
-/*
- * Use the reserved field to indicate magic values.
- * these values will only be used internally by the driver,
- * and won't make it to the fw (reserved will be 0).
- * BC_FILTER_MAGIC_IP - configure the val of this attribute to
- *	be the vif's ip address. in case there is not a single
- *	ip address (0, or more than 1), this attribute will
- *	be skipped.
- * BC_FILTER_MAGIC_MAC - set the val of this attribute to
- *	the LSB bytes of the vif's mac address
- */
-enum {
-	BC_FILTER_MAGIC_NONE = 0,
-	BC_FILTER_MAGIC_IP,
-	BC_FILTER_MAGIC_MAC,
-};
-
-static const struct iwl_fw_bcast_filter iwl_mvm_default_bcast_filters[] = {
-	{
-		/* arp */
-		.discard = 0,
-		.frame_type = BCAST_FILTER_FRAME_TYPE_ALL,
-		.attrs = {
-			{
-				/* frame type - arp, hw type - ethernet */
-				.offset_type =
-					BCAST_FILTER_OFFSET_PAYLOAD_START,
-				.offset = sizeof(rfc1042_header),
-				.val = cpu_to_be32(0x08060001),
-				.mask = cpu_to_be32(0xffffffff),
-			},
-			{
-				/* arp dest ip */
-				.offset_type =
-					BCAST_FILTER_OFFSET_PAYLOAD_START,
-				.offset = sizeof(rfc1042_header) + 2 +
-					  sizeof(struct arphdr) +
-					  ETH_ALEN + sizeof(__be32) +
-					  ETH_ALEN,
-				.mask = cpu_to_be32(0xffffffff),
-				/* mark it as special field */
-				.reserved1 = cpu_to_le16(BC_FILTER_MAGIC_IP),
-			},
-		},
-	},
-	{
-		/* dhcp offer bcast */
-		.discard = 0,
-		.frame_type = BCAST_FILTER_FRAME_TYPE_IPV4,
-		.attrs = {
-			{
-				/* udp dest port - 68 (bootp client)*/
-				.offset_type = BCAST_FILTER_OFFSET_IP_END,
-				.offset = offsetof(struct udphdr, dest),
-				.val = cpu_to_be32(0x00440000),
-				.mask = cpu_to_be32(0xffff0000),
-			},
-			{
-				/* dhcp - lsb bytes of client hw address */
-				.offset_type = BCAST_FILTER_OFFSET_IP_END,
-				.offset = 38,
-				.mask = cpu_to_be32(0xffffffff),
-				/* mark it as special field */
-				.reserved1 = cpu_to_le16(BC_FILTER_MAGIC_MAC),
-			},
-		},
-	},
-	/* last filter must be empty */
-	{},
-};
-#endif
-
 static const struct cfg80211_pmsr_capabilities iwl_mvm_pmsr_capa = {
 	.max_peers = IWL_MVM_TOF_MAX_APS,
 	.report_ap_tsf = 1,
@@ -683,11 +610,6 @@ int iwl_mvm_mac_setup_register(struct iw
 	}
 #endif
 
-#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
-	/* assign default bcast filtering configuration */
-	mvm->bcast_filters = iwl_mvm_default_bcast_filters;
-#endif
-
 	ret = iwl_mvm_leds_init(mvm);
 	if (ret)
 		return ret;
@@ -1803,162 +1725,6 @@ static void iwl_mvm_config_iface_filter(
 	mutex_unlock(&mvm->mutex);
 }
 
-#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
-struct iwl_bcast_iter_data {
-	struct iwl_mvm *mvm;
-	struct iwl_bcast_filter_cmd *cmd;
-	u8 current_filter;
-};
-
-static void
-iwl_mvm_set_bcast_filter(struct ieee80211_vif *vif,
-			 const struct iwl_fw_bcast_filter *in_filter,
-			 struct iwl_fw_bcast_filter *out_filter)
-{
-	struct iwl_fw_bcast_filter_attr *attr;
-	int i;
-
-	memcpy(out_filter, in_filter, sizeof(*out_filter));
-
-	for (i = 0; i < ARRAY_SIZE(out_filter->attrs); i++) {
-		attr = &out_filter->attrs[i];
-
-		if (!attr->mask)
-			break;
-
-		switch (attr->reserved1) {
-		case cpu_to_le16(BC_FILTER_MAGIC_IP):
-			if (vif->bss_conf.arp_addr_cnt != 1) {
-				attr->mask = 0;
-				continue;
-			}
-
-			attr->val = vif->bss_conf.arp_addr_list[0];
-			break;
-		case cpu_to_le16(BC_FILTER_MAGIC_MAC):
-			attr->val = *(__be32 *)&vif->addr[2];
-			break;
-		default:
-			break;
-		}
-		attr->reserved1 = 0;
-		out_filter->num_attrs++;
-	}
-}
-
-static void iwl_mvm_bcast_filter_iterator(void *_data, u8 *mac,
-					  struct ieee80211_vif *vif)
-{
-	struct iwl_bcast_iter_data *data = _data;
-	struct iwl_mvm *mvm = data->mvm;
-	struct iwl_bcast_filter_cmd *cmd = data->cmd;
-	struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif);
-	struct iwl_fw_bcast_mac *bcast_mac;
-	int i;
-
-	if (WARN_ON(mvmvif->id >= ARRAY_SIZE(cmd->macs)))
-		return;
-
-	bcast_mac = &cmd->macs[mvmvif->id];
-
-	/*
-	 * 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;
-
-	/* copy all configured filters */
-	for (i = 0; mvm->bcast_filters[i].attrs[0].mask; i++) {
-		/*
-		 * Make sure we don't exceed our filters limit.
-		 * if there is still a valid filter to be configured,
-		 * be on the safe side and just allow bcast for this mac.
-		 */
-		if (WARN_ON_ONCE(data->current_filter >=
-				 ARRAY_SIZE(cmd->filters))) {
-			bcast_mac->default_discard = 0;
-			bcast_mac->attached_filters = 0;
-			break;
-		}
-
-		iwl_mvm_set_bcast_filter(vif,
-					 &mvm->bcast_filters[i],
-					 &cmd->filters[data->current_filter]);
-
-		/* skip current filter if it contains no attributes */
-		if (!cmd->filters[data->current_filter].num_attrs)
-			continue;
-
-		/* attach the filter to current mac */
-		bcast_mac->attached_filters |=
-				cpu_to_le16(BIT(data->current_filter));
-
-		data->current_filter++;
-	}
-}
-
-bool iwl_mvm_bcast_filter_build_cmd(struct iwl_mvm *mvm,
-				    struct iwl_bcast_filter_cmd *cmd)
-{
-	struct iwl_bcast_iter_data iter_data = {
-		.mvm = mvm,
-		.cmd = cmd,
-	};
-
-	if (IWL_MVM_FW_BCAST_FILTER_PASS_ALL)
-		return false;
-
-	memset(cmd, 0, sizeof(*cmd));
-	cmd->max_bcast_filters = ARRAY_SIZE(cmd->filters);
-	cmd->max_macs = ARRAY_SIZE(cmd->macs);
-
-#ifdef CONFIG_IWLWIFI_DEBUGFS
-	/* use debugfs filters/macs if override is configured */
-	if (mvm->dbgfs_bcast_filtering.override) {
-		memcpy(cmd->filters, &mvm->dbgfs_bcast_filtering.cmd.filters,
-		       sizeof(cmd->filters));
-		memcpy(cmd->macs, &mvm->dbgfs_bcast_filtering.cmd.macs,
-		       sizeof(cmd->macs));
-		return true;
-	}
-#endif
-
-	/* if no filters are configured, do nothing */
-	if (!mvm->bcast_filters)
-		return false;
-
-	/* configure and attach these filters for each associated sta vif */
-	ieee80211_iterate_active_interfaces(
-		mvm->hw, IEEE80211_IFACE_ITER_NORMAL,
-		iwl_mvm_bcast_filter_iterator, &iter_data);
-
-	return true;
-}
-
-static int iwl_mvm_configure_bcast_filter(struct iwl_mvm *mvm)
-{
-	struct iwl_bcast_filter_cmd cmd;
-
-	if (!(mvm->fw->ucode_capa.flags & IWL_UCODE_TLV_FLAGS_BCAST_FILTERING))
-		return 0;
-
-	if (!iwl_mvm_bcast_filter_build_cmd(mvm, &cmd))
-		return 0;
-
-	return iwl_mvm_send_cmd_pdu(mvm, BCAST_FILTER_CMD, 0,
-				    sizeof(cmd), &cmd);
-}
-#else
-static inline int iwl_mvm_configure_bcast_filter(struct iwl_mvm *mvm)
-{
-	return 0;
-}
-#endif
-
 static int iwl_mvm_update_mu_groups(struct iwl_mvm *mvm,
 				    struct ieee80211_vif *vif)
 {
@@ -2469,7 +2235,6 @@ static void iwl_mvm_bss_info_changed_sta
 		}
 
 		iwl_mvm_recalc_multicast(mvm);
-		iwl_mvm_configure_bcast_filter(mvm);
 
 		/* reset rssi values */
 		mvmvif->bf_data.ave_beacon_signal = 0;
@@ -2519,11 +2284,6 @@ static void iwl_mvm_bss_info_changed_sta
 		}
 	}
 
-	if (changes & BSS_CHANGED_ARP_FILTER) {
-		IWL_DEBUG_MAC80211(mvm, "arp filter changed\n");
-		iwl_mvm_configure_bcast_filter(mvm);
-	}
-
 	if (changes & BSS_CHANGED_BANDWIDTH)
 		iwl_mvm_apply_fw_smps_request(vif);
 }
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mvm.h
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mvm.h
@@ -872,17 +872,6 @@ struct iwl_mvm {
 	/* rx chain antennas set through debugfs for the scan command */
 	u8 scan_rx_ant;
 
-#ifdef CONFIG_IWLWIFI_BCAST_FILTERING
-	/* broadcast filters to configure for each associated station */
-	const struct iwl_fw_bcast_filter *bcast_filters;
-#ifdef CONFIG_IWLWIFI_DEBUGFS
-	struct {
-		bool override;
-		struct iwl_bcast_filter_cmd cmd;
-	} dbgfs_bcast_filtering;
-#endif
-#endif
-
 	/* Internal station */
 	struct iwl_mvm_int_sta aux_sta;
 	struct iwl_mvm_int_sta snif_sta;
@@ -1570,8 +1559,6 @@ int iwl_mvm_up(struct iwl_mvm *mvm);
 int iwl_mvm_load_d3_fw(struct iwl_mvm *mvm);
 
 int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm);
-bool iwl_mvm_bcast_filter_build_cmd(struct iwl_mvm *mvm,
-				    struct iwl_bcast_filter_cmd *cmd);
 
 /*
  * FW notifications / CMD responses handlers
--- a/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
@@ -474,7 +474,6 @@ static const struct iwl_hcmd_names iwl_m
 	HCMD_NAME(MCC_CHUB_UPDATE_CMD),
 	HCMD_NAME(MARKER_CMD),
 	HCMD_NAME(BT_PROFILE_NOTIFICATION),
-	HCMD_NAME(BCAST_FILTER_CMD),
 	HCMD_NAME(MCAST_FILTER_CMD),
 	HCMD_NAME(REPLY_SF_CFG_CMD),
 	HCMD_NAME(REPLY_BEACON_FILTERING_CMD),



  parent reply	other threads:[~2022-02-21  9:52 UTC|newest]

Thread overview: 246+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-21  8:46 [PATCH 5.16 000/227] 5.16.11-rc1 review Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 001/227] drm/nouveau/pmu/gm200-: use alternate falcon reset sequence Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 002/227] bpf: Introduce composable reg, ret and arg types Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 003/227] bpf: Replace ARG_XXX_OR_NULL with ARG_XXX | PTR_MAYBE_NULL Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 004/227] bpf: Replace RET_XXX_OR_NULL with RET_XXX " Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 005/227] bpf: Replace PTR_TO_XXX_OR_NULL with PTR_TO_XXX " Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 006/227] bpf: Introduce MEM_RDONLY flag Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 007/227] bpf: Convert PTR_TO_MEM_OR_NULL to composable types Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 008/227] bpf: Make per_cpu_ptr return rdonly PTR_TO_MEM Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 009/227] bpf: Add MEM_RDONLY for helper args that are pointers to rdonly mem Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 010/227] bpf/selftests: Test PTR_TO_RDONLY_MEM Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 011/227] HID:Add support for UGTABLET WP5540 Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 012/227] Revert "svm: Add warning message for AVIC IPI invalid target" Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 013/227] parisc: Show error if wrong 32/64-bit compiler is being used Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 014/227] serial: parisc: GSC: fix build when IOSAPIC is not set Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 015/227] parisc: Drop __init from map_pages declaration Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 016/227] parisc: Fix data TLB miss in sba_unmap_sg Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 017/227] parisc: Fix sglist access in ccio-dma.c Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 018/227] mmc: block: fix read single on recovery logic Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 019/227] mm: dont try to NUMA-migrate COW pages that have other uses Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 020/227] HID: amd_sfh: Add illuminance mask to limit ALS max value Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 021/227] HID: i2c-hid: goodix: Fix a lockdep splat Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 022/227] HID: amd_sfh: Increase sensor command timeout Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 023/227] selftests: kvm: Remove absent target file Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 024/227] HID: amd_sfh: Correct the structure field name Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 025/227] PCI: hv: Fix NUMA node assignment when kernel boots with custom NUMA topology Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 026/227] parisc: Add ioread64_lo_hi() and iowrite64_lo_hi() Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 027/227] HID: apple: Set the tilde quirk flag on the Wellspring 5 and later Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 028/227] btrfs: dont hold CPU for too long when defragging a file Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 029/227] btrfs: send: in case of IO error log it Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 030/227] btrfs: defrag: dont try to defrag extents which are under writeback Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 031/227] ASoC: mediatek: fix unmet dependency on GPIOLIB for SND_SOC_DMIC Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 032/227] platform/x86: touchscreen_dmi: Add info for the RWC NANOTE P8 AY07J 2-in-1 Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 033/227] platform/x86: ISST: Fix possible circular locking dependency detected Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 034/227] platform/x86: amd-pmc: Correct usage of SMU version Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 035/227] kunit: tool: Import missing importlib.abc Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 036/227] selftests: rtc: Increase test timeout so that all tests run Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 037/227] kselftest: signal all child processes Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 038/227] selftests: netfilter: reduce zone stress test running time Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 039/227] net: ieee802154: at86rf230: Stop leaking skbs Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 040/227] selftests/zram: Skip max_comp_streams interface on newer kernel Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 041/227] selftests/zram01.sh: Fix compression ratio calculation Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 042/227] selftests/zram: Adapt the situation that /dev/zram0 is being used Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 043/227] selftests: openat2: Print also errno in failure messages Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 044/227] selftests: openat2: Add missing dependency in Makefile Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 045/227] selftests: openat2: Skip testcases that fail with EOPNOTSUPP Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 046/227] selftests: skip mincore.check_file_mmap when fs lacks needed support Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 047/227] ax25: improve the incomplete fix to avoid UAF and NPD bugs Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 048/227] cifs: unlock chan_lock before calling cifs_put_tcp_session Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 049/227] pinctrl: bcm63xx: fix unmet dependency on REGMAP for GPIO_REGMAP Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 050/227] vfs: make freeze_super abort when sync_filesystem returns error Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 051/227] vfs: make sync_filesystem return errors from ->sync_fs Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 052/227] quota: make dquot_quota_sync " Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 053/227] scsi: pm80xx: Fix double completion for SATA devices Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 054/227] kselftest: Fix vdso_test_abi return status Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 055/227] scsi: core: Reallocate devices budget map on queue depth change Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 056/227] scsi: pm8001: Fix use-after-free for aborted TMF sas_task Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 057/227] scsi: pm8001: Fix use-after-free for aborted SSP/STP sas_task Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 058/227] drm/amd: Warn users about potential s0ix problems Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 059/227] mailmap: update Christian Brauners email address Greg Kroah-Hartman
2022-02-21  8:47 ` [PATCH 5.16 060/227] nvme: fix a possible use-after-free in controller reset during load Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 061/227] nvme-tcp: fix possible use-after-free in transport error_recovery work Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 062/227] nvme-rdma: " Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 063/227] net: sparx5: do not refer to skb after passing it on Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 064/227] drm/amd: add support to check whether the system is set to s3 Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 065/227] drm/amd: Only run s3 or s0ix if system is configured properly Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 066/227] drm/amdgpu: fix logic inversion in check Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 067/227] x86/Xen: streamline (and fix) PV CPU enumeration Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 068/227] Revert "module, async: async_synchronize_full() on module init iff async is used" Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 069/227] gcc-plugins/stackleak: Use noinstr in favor of notrace Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 070/227] random: wake up /dev/random writers after zap Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 071/227] KVM: x86/xen: Fix runstate updates to be atomic when preempting vCPU Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 072/227] KVM: x86: nSVM/nVMX: set nested_run_pending on VM entry which is a result of RSM Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 073/227] KVM: x86: SVM: dont passthrough SMAP/SMEP/PKE bits in !NPT && !gCR0.PG case Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 074/227] KVM: x86: nSVM: fix potential NULL derefernce on nested migration Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 075/227] KVM: x86: nSVM: mark vmcb01 as dirty when restoring SMM saved state Greg Kroah-Hartman
2022-02-21  8:48 ` Greg Kroah-Hartman [this message]
2022-02-21  8:48 ` [PATCH 5.16 077/227] iwlwifi: fix use-after-free Greg Kroah-Hartman
2022-02-21 12:00   ` Thorsten Leemhuis
2022-02-21 12:29     ` Kalle Valo
2022-02-21 14:30       ` Thorsten Leemhuis
2022-02-21 15:07         ` Kalle Valo
2022-02-21  8:48 ` [PATCH 5.16 078/227] drm/mediatek: mtk_dsi: Avoid EPROBE_DEFER loop with external bridge Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 079/227] drm/radeon: Fix backlight control on iMac 12,1 Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 080/227] drm/atomic: Dont pollute crtc_state->mode_blob with error pointers Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 081/227] drm/amd/pm: correct the sequence of sending gpu reset msg Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 082/227] drm/amdgpu: skipping SDMA hw_init and hw_fini for S0ix Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 083/227] drm/i915/opregion: check port number bounds for SWSCI display power state Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 084/227] drm/i915: Fix dbuf slice config lookup Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 085/227] drm/i915: Fix mbus join " Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 086/227] vsock: remove vsock from connected table when connect is interrupted by a signal Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 087/227] tee: export teedev_open() and teedev_close_context() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 088/227] optee: use driver internal tee_context for some rpc Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 089/227] drm/cma-helper: Set VM_DONTEXPAND for mmap Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 090/227] drm/i915/gvt: Make DRM_I915_GVT depend on X86 Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 091/227] drm/i915/ttm: tweak priority hint selection Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 092/227] iwlwifi: pcie: fix locking when "HW not ready" Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 093/227] iwlwifi: pcie: gen2: " Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 094/227] iwlwifi: mvm: fix condition which checks the version of rate_n_flags Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 095/227] iwlwifi: fix iwl_legacy_rate_to_fw_idx Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 096/227] iwlwifi: mvm: dont send SAR GEO command for 3160 devices Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 097/227] netfilter: xt_socket: fix a typo in socket_mt_destroy() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 098/227] selftests: netfilter: fix exit value for nft_concat_range Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 099/227] netfilter: nft_synproxy: unregister hooks on init error path Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 100/227] selftests: netfilter: disable rp_filter on router Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 101/227] ipv4: fix data races in fib_alias_hw_flags_set Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 102/227] ipv6: fix data-race in fib6_info_hw_flags_set / fib6_purge_rt Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 103/227] ipv6: mcast: use rcu-safe version of ipv6_get_lladdr() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 104/227] ipv6: per-netns exclusive flowlabel checks Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 105/227] Revert "net: ethernet: bgmac: Use devm_platform_ioremap_resource_byname" Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 106/227] mac80211: mlme: check for null after calling kmemdup Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 107/227] brcmfmac: firmware: Fix crash in brcm_alt_fw_path Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 108/227] cfg80211: fix race in netlink owner interface destruction Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 109/227] net: dsa: lan9303: fix reset on probe Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 110/227] net: dsa: mv88e6xxx: flush switchdev FDB workqueue before removing VLAN Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 111/227] net: dsa: lantiq_gswip: fix use after free in gswip_remove() Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 112/227] net: dsa: lan9303: handle hwaccel VLAN tags Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 113/227] net: dsa: lan9303: add VLAN IDs to master device Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 114/227] net: ieee802154: ca8210: Fix lifs/sifs periods Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 115/227] ping: fix the dif and sdif check in ping_lookup Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 116/227] bonding: force carrier update when releasing slave Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 117/227] mctp: fix use after free Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 118/227] drop_monitor: fix data-race in dropmon_net_event / trace_napi_poll_hit Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 119/227] net_sched: add __rcu annotation to netdev->qdisc Greg Kroah-Hartman
2022-02-21  8:48 ` [PATCH 5.16 120/227] crypto: af_alg - get rid of alg_memory_allocated Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 121/227] bonding: fix data-races around agg_select_timer Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 122/227] nfp: flower: netdev offload check for ip6gretap Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 123/227] libsubcmd: Fix use-after-free for realloc(..., 0) Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 124/227] net/smc: Avoid overwriting the copies of clcsock callback functions Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 125/227] net: phy: mediatek: remove PHY mode check on MT7531 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 126/227] atl1c: fix tx timeout after link flap on Mikrotik 10/25G NIC Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 127/227] tipc: fix wrong publisher node address in link publications Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 128/227] dpaa2-switch: fix default return of dpaa2_switch_flower_parse_mirror_key Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 129/227] dpaa2-eth: Initialize mutex used in one step timestamping path Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 130/227] net: mscc: ocelot: fix use-after-free in ocelot_vlan_del() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 131/227] net: bridge: multicast: notify switchdev driver whenever MC processing gets disabled Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 132/227] perf bpf: Defer freeing string after possible strlen() on it Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 133/227] selftests/exec: Add non-regular to TEST_GEN_PROGS Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 134/227] arm64: Correct wrong label in macro __init_el2_gicv3 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 135/227] ALSA: usb-audio: Dont abort resume upon errors Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 136/227] ALSA: usb-audio: revert to IMPLICIT_FB_FIXED_DEV for M-Audio FastTrack Ultra Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 137/227] ALSA: memalloc: Fix dma_need_sync() checks Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 138/227] ALSA: memalloc: invalidate SG pages before sync Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 139/227] ALSA: hda/realtek: Add quirk for Legion Y9000X 2019 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 140/227] ALSA: hda/realtek: Fix deadlock by COEF mutex Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 141/227] ALSA: hda: Fix regression on forced probe mask option Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 142/227] ALSA: hda: Fix missing codec probe on Shenker Dock 15 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 143/227] ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 144/227] ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_range() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 145/227] ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_sx() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 146/227] ASoC: ops: Fix stereo change notifications in snd_soc_put_xr_sx() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 147/227] cifs: fix set of group SID via NTSD xattrs Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 148/227] cifs: fix confusing unneeded warning message on smb2.1 and earlier Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 149/227] ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 150/227] powerpc/603: Fix boot failure with DEBUG_PAGEALLOC and KFENCE Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 151/227] powerpc/lib/sstep: fix ptesync build error Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 152/227] mtd: rawnand: gpmi: dont leak PM reference in error path Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 153/227] smb3: fix snapshot mount option Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 154/227] tipc: fix wrong notification node addresses Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 155/227] scsi: ufs: Remove dead code Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 156/227] scsi: ufs: Fix a deadlock in the error handler Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 157/227] ASoC: tas2770: Insert post reset delay Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 158/227] ASoC: qcom: Actually clear DMA interrupt register for HDMI Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 159/227] block/wbt: fix negative inflight counter when remove scsi device Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 160/227] NFS: Remove an incorrect revalidation in nfs4_update_changeattr_locked() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 161/227] NFS: LOOKUP_DIRECTORY is also ok with symlinks Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 162/227] NFS: Do not report writeback errors in nfs_getattr() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 163/227] tty: n_tty: do not look ahead for EOL character past the end of the buffer Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 164/227] block: fix surprise removal for drivers calling blk_set_queue_dying Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 165/227] mtd: rawnand: qcom: Fix clock sequencing in qcom_nandc_probe() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 166/227] mtd: parsers: qcom: Fix kernel panic on skipped partition Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 167/227] mtd: parsers: qcom: Fix missing free for pparts in cleanup Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 168/227] mtd: phram: Prevent divide by zero bug in phram_setup() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 169/227] mtd: rawnand: brcmnand: Fixed incorrect sub-page ECC status Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 170/227] scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 171/227] EDAC: Fix calculation of returned address and next offset in edac_align_ptr() Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 172/227] x86/ptrace: Fix xfpregs_set()s incorrect xmm clearing Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 173/227] ucounts: Base set_cred_ucounts changes on the real user Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 174/227] ucounts: Handle wrapping in is_ucounts_overlimit Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 175/227] ucounts: Enforce RLIMIT_NPROC not RLIMIT_NPROC+1 Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 176/227] rlimit: Fix RLIMIT_NPROC enforcement failure caused by capability calls in set_user Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 177/227] ucounts: Move RLIMIT_NPROC handling after set_user Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 178/227] net: sched: limit TC_ACT_REPEAT loops Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 179/227] dmaengine: sh: rcar-dmac: Check for error num after setting mask Greg Kroah-Hartman
2022-02-21  8:49 ` [PATCH 5.16 180/227] dmaengine: stm32-dmamux: Fix PM disable depth imbalance in stm32_dmamux_probe Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 181/227] dmaengine: sh: rcar-dmac: Check for error num after dma_set_max_seg_size Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 182/227] tests: fix idmapped mount_setattr test Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 183/227] i2c: qcom-cci: dont delete an unregistered adapter Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 184/227] i2c: qcom-cci: dont put a device tree node before i2c_add_adapter() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 185/227] dmaengine: ptdma: Fix the error handling path in pt_core_init() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 186/227] copy_process(): Move fd_install() out of sighand->siglock critical section Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 187/227] scsi: qedi: Fix ABBA deadlock in qedi_process_tmf_resp() and qedi_process_cmd_cleanup_resp() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 188/227] ASoC: wm_adsp: Correct control read size when parsing compressed buffer Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 189/227] ice: enable parsing IPSEC SPI headers for RSS Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 190/227] i2c: brcmstb: fix support for DSL and CM variants Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 191/227] lockdep: Correct lock_classes index mapping Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 192/227] HID: elo: fix memory leak in elo_probe Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 193/227] mtd: rawnand: ingenic: Fix missing put_device in ingenic_ecc_get Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 194/227] Drivers: hv: vmbus: Fix memory leak in vmbus_add_channel_kobj Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 195/227] KVM: x86/pmu: Refactoring find_arch_event() to pmc_perf_hw_id() Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 196/227] KVM: x86/pmu: Dont truncate the PerfEvtSeln MSR when creating a perf event Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 197/227] KVM: x86/pmu: Use AMD64_RAW_EVENT_MASK for PERF_TYPE_RAW Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 198/227] ARM: OMAP2+: hwmod: Add of_node_put() before break Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 199/227] ARM: OMAP2+: adjust the location of put_device() call in omapdss_init_of Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 200/227] phy: usb: Leave some clocks running during suspend Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 201/227] staging: vc04_services: Fix RCU dereference check Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 202/227] phy: phy-mtk-tphy: Fix duplicated argument in phy-mtk-tphy Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 203/227] irqchip/sifive-plic: Add missing thead,c900-plic match string Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 204/227] x86/bug: Merge annotate_reachable() into _BUG_FLAGS() asm Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 205/227] netfilter: conntrack: dont refresh sctp entries in closed state Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 206/227] ksmbd: fix same UniqueId for dot and dotdot entries Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 207/227] ksmbd: dont align last entry offset in smb2 query directory Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 208/227] arm64: dts: meson-gx: add ATF BL32 reserved-memory region Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 209/227] arm64: dts: meson-g12: " Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 210/227] arm64: dts: meson-g12: drop BL32 region from SEI510/SEI610 Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 211/227] pidfd: fix test failure due to stack overflow on some arches Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 212/227] selftests: fixup build warnings in pidfd / clone3 tests Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 213/227] mm: io_uring: allow oom-killer from io_uring_setup Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 214/227] ACPI: PM: Revert "Only mark EC GPE for wakeup on Intel systems" Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 215/227] kconfig: let shell return enough output for deep path names Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 216/227] ata: libata-core: Disable TRIM on M88V29 Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 217/227] soc: aspeed: lpc-ctrl: Block error printing on probe defer cases Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 218/227] xprtrdma: fix pointer derefs in error cases of rpcrdma_ep_create Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 219/227] drm/rockchip: dw_hdmi: Do not leave clock enabled in error case Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 220/227] tracing: Fix tp_printk option related with tp_printk_stop_on_boot Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 221/227] display/amd: decrease message verbosity about watermarks table failure Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 222/227] drm/amdgpu: add utcl2_harvest to gc 10.3.1 Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 223/227] drm/amd/display: Cap pflip irqs per max otg number Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 224/227] drm/amd/display: fix yellow carp wm clamping Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 225/227] net: usb: qmi_wwan: Add support for Dell DW5829e Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 226/227] net: macb: Align the dma and coherent dma masks Greg Kroah-Hartman
2022-02-21  8:50 ` [PATCH 5.16 227/227] kconfig: fix failing to generate auto.conf Greg Kroah-Hartman
2022-02-21 16:13 ` [PATCH 5.16 000/227] 5.16.11-rc1 review Jeffrin Thalakkottoor
2022-02-21 17:17 ` Guenter Roeck
2022-02-21 17:56   ` Greg Kroah-Hartman
2022-02-21 18:17     ` Guenter Roeck
2022-02-21 21:14 ` Naresh Kamboju
2022-02-21 21:22 ` Guenter Roeck
2022-02-21 21:40 ` Shuah Khan
2022-02-21 23:35 ` Zan Aziz
2022-02-22  4:16 ` Florian Fainelli
2022-02-22  7:31 ` Bagas Sanjaya
2022-02-22 11:45 ` Rudi Heitbaum
2022-02-22 14:21 ` Ron Economos
2022-02-22 17:14 ` Justin Forbes
2022-02-23  2:54 ` Slade Watkins

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220221084937.399520230@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=kvalo@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luciano.coelho@intel.com \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox