瀏覽代碼

mwifiex: overwrite earlier IE buffers for new set IE request

All IE buffers are freshly supplied. In such case, there is no need
to preserve earlier buffers with same management mask and index.

Signed-off-by: Avinash Patil <patila@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Avinash Patil 13 年之前
父節點
當前提交
bd6aa03025
共有 1 個文件被更改,包括 2 次插入5 次删除
  1. 2 5
      drivers/net/wireless/mwifiex/ie.c

+ 2 - 5
drivers/net/wireless/mwifiex/ie.c

@@ -51,8 +51,7 @@ mwifiex_ie_get_autoidx(struct mwifiex_private *priv, u16 subtype_mask,
 
 
 	for (i = 0; i < priv->adapter->max_mgmt_ie_index; i++) {
 	for (i = 0; i < priv->adapter->max_mgmt_ie_index; i++) {
 		mask = le16_to_cpu(priv->mgmt_ie[i].mgmt_subtype_mask);
 		mask = le16_to_cpu(priv->mgmt_ie[i].mgmt_subtype_mask);
-		len = le16_to_cpu(priv->mgmt_ie[i].ie_length) +
-		      le16_to_cpu(ie->ie_length);
+		len = le16_to_cpu(ie->ie_length);
 
 
 		if (mask == MWIFIEX_AUTO_IDX_MASK)
 		if (mask == MWIFIEX_AUTO_IDX_MASK)
 			continue;
 			continue;
@@ -108,10 +107,8 @@ mwifiex_update_autoindex_ies(struct mwifiex_private *priv,
 				return -1;
 				return -1;
 
 
 			tmp = (u8 *)&priv->mgmt_ie[index].ie_buffer;
 			tmp = (u8 *)&priv->mgmt_ie[index].ie_buffer;
-			tmp += le16_to_cpu(priv->mgmt_ie[index].ie_length);
 			memcpy(tmp, &ie->ie_buffer, le16_to_cpu(ie->ie_length));
 			memcpy(tmp, &ie->ie_buffer, le16_to_cpu(ie->ie_length));
-			le16_add_cpu(&priv->mgmt_ie[index].ie_length,
-				     le16_to_cpu(ie->ie_length));
+			priv->mgmt_ie[index].ie_length = ie->ie_length;
 			priv->mgmt_ie[index].ie_index = cpu_to_le16(index);
 			priv->mgmt_ie[index].ie_index = cpu_to_le16(index);
 			priv->mgmt_ie[index].mgmt_subtype_mask =
 			priv->mgmt_ie[index].mgmt_subtype_mask =
 							cpu_to_le16(mask);
 							cpu_to_le16(mask);