linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals
@ 2018-03-31  7:05 Joe Perches
  2018-03-31  7:05 ` [PATCH 01/12] ethernet: Add generic ether_<foo>_addr addresses Joe Perches
                   ` (12 more replies)
  0 siblings, 13 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: netdev, linux-wireless, b43-dev, bridge, netfilter-devel, coreteam
  Cc: linux-kernel, brcm80211-dev-list.pdl, brcm80211-dev-list

There are many local static and non-static arrays that are used for
Ethernet broadcast address output or comparison.

Centralize the array into a single separate file and remove the local
arrays.

Joe Perches (12):
  ethernet: Add generic ether_<foo>_addr addresses
  treewide/net: Rename eth_stp_addr to ether_stp_addr
  net: mac80211: Use global ether_broadcast_addr
  bridge: netfilter: Use the new global ether_<foo>_addr arrays
  net: atm: Use ether_broadcast_addr
  wireless: Convert simple uses of a static const Ethernet broadcast address
  brcmfmac: Convert ALLFFMAC to ether_broadcast_addr
  iwlegacy: Remove EXPORT_SYMBOL(il_bcast_addr) and use ether_broadcast_addr
  iwlwifi: Remove local iwl_bcast_addr and use ether_broadcast_addr
  mvpp2: Use ether_broadcast_addr instead of a local array
  qlogic: Convert local bcast_addr to global ether_broadcast_addr
  ethernet: Use ether_zero_addr instead of local statics

 drivers/net/dsa/lan9303-core.c                        |  4 ++--
 drivers/net/ethernet/broadcom/b44.c                   |  5 ++---
 drivers/net/ethernet/freescale/gianfar.c              |  3 +--
 drivers/net/ethernet/marvell/mvpp2.c                  |  4 +---
 drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c    |  5 +----
 drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c        |  6 ++----
 .../net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c  |  6 ++----
 drivers/net/wireless/admtek/adm8211.c                 |  3 +--
 drivers/net/wireless/ath/carl9170/mac.c               |  4 +---
 drivers/net/wireless/broadcom/b43/main.c              |  3 +--
 .../net/wireless/broadcom/brcm80211/brcmfmac/common.c |  2 --
 .../net/wireless/broadcom/brcm80211/brcmfmac/common.h |  2 --
 .../wireless/broadcom/brcm80211/brcmfmac/flowring.c   |  8 ++++----
 drivers/net/wireless/intel/iwlegacy/3945-mac.c        |  2 +-
 drivers/net/wireless/intel/iwlegacy/4965-mac.c        |  2 +-
 drivers/net/wireless/intel/iwlegacy/common.c          |  3 ---
 drivers/net/wireless/intel/iwlegacy/common.h          |  1 -
 drivers/net/wireless/intel/iwlwifi/dvm/dev.h          |  1 -
 drivers/net/wireless/intel/iwlwifi/dvm/scan.c         |  2 +-
 drivers/net/wireless/intel/iwlwifi/dvm/sta.c          |  4 +---
 drivers/net/wireless/marvell/mwifiex/cfg80211.c       |  3 +--
 drivers/net/wireless/realtek/rtlwifi/core.c           |  5 ++---
 drivers/net/wireless/rndis_wlan.c                     |  6 +-----
 drivers/net/wireless/ti/wl1251/main.c                 |  5 +----
 drivers/net/wireless/ti/wlcore/main.c                 |  5 +----
 include/linux/etherdevice.h                           | 13 +++++++++----
 net/atm/lec.c                                         | 12 +++++-------
 net/bridge/br_device.c                                |  4 ++--
 net/bridge/netfilter/ebt_stp.c                        |  6 ++----
 net/ethernet/Makefile                                 |  2 +-
 net/ethernet/ether_addrs.c                            | 19 +++++++++++++++++++
 net/mac80211/iface.c                                  |  5 +----
 net/mac80211/key.c                                    |  6 ++----
 net/mac80211/mesh_hwmp.c                              | 19 ++++++++++---------
 net/mac80211/mesh_pathtbl.c                           |  8 ++++----
 35 files changed, 83 insertions(+), 105 deletions(-)
 create mode 100644 net/ethernet/ether_addrs.c

-- 
2.15.0

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 01/12] ethernet: Add generic ether_<foo>_addr addresses
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31  7:05 ` [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr Joe Perches
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: linux-kernel; +Cc: David S. Miller, netdev

Treewide there are ~60 declarations of Ethernet broadcast or zero address
use as a 6 byte array that are later used as either an output for vsprintf
extension %pM or as a source array to copy or compare.

Create const globals for these uses with EXPORT_SYMBOL for modules.

Miscellanea:

o Rename and move static const eth_reservd_addr_base from etherdevice.h
  to this new ether_addrs.c file so it is no longer oddly declared
  as static const in a .h file

Signed-off-by: Joe Perches <joe@perches.com>
---
 include/linux/etherdevice.h | 12 ++++++++----
 net/ethernet/Makefile       |  2 +-
 net/ethernet/ether_addrs.c  | 19 +++++++++++++++++++
 3 files changed, 28 insertions(+), 5 deletions(-)
 create mode 100644 net/ethernet/ether_addrs.c

diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
index 79563840c295..85d2486b2959 100644
--- a/include/linux/etherdevice.h
+++ b/include/linux/etherdevice.h
@@ -63,10 +63,14 @@ struct sk_buff **eth_gro_receive(struct sk_buff **head,
 				 struct sk_buff *skb);
 int eth_gro_complete(struct sk_buff *skb, int nhoff);
 
+/* Generic Ethernet addresses */
+extern const u8 ether_broadcast_addr[ETH_ALEN];	/* all 0xff */
+extern const u8 ether_zero_addr[ETH_ALEN];	/* all zeros */
+
 /* Reserved Ethernet Addresses per IEEE 802.1Q */
-static const u8 eth_reserved_addr_base[ETH_ALEN] __aligned(2) =
-{ 0x01, 0x80, 0xc2, 0x00, 0x00, 0x00 };
-#define eth_stp_addr eth_reserved_addr_base
+extern const u8 ether_reserved_addr_base[ETH_ALEN];
+
+#define eth_stp_addr ether_reserved_addr_base
 
 /**
  * is_link_local_ether_addr - Determine if given Ethernet address is link-local
@@ -80,7 +84,7 @@ static const u8 eth_reserved_addr_base[ETH_ALEN] __aligned(2) =
 static inline bool is_link_local_ether_addr(const u8 *addr)
 {
 	__be16 *a = (__be16 *)addr;
-	static const __be16 *b = (const __be16 *)eth_reserved_addr_base;
+	static const __be16 *b = (const __be16 *)ether_reserved_addr_base;
 	static const __be16 m = cpu_to_be16(0xfff0);
 
 #if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS)
diff --git a/net/ethernet/Makefile b/net/ethernet/Makefile
index 323177505404..fbbcfec2ba10 100644
--- a/net/ethernet/Makefile
+++ b/net/ethernet/Makefile
@@ -2,4 +2,4 @@
 # Makefile for the Linux Ethernet layer.
 #
 
-obj-y					+= eth.o
+obj-y					+= eth.o ether_addrs.o
diff --git a/net/ethernet/ether_addrs.c b/net/ethernet/ether_addrs.c
new file mode 100644
index 000000000000..e0b7a57628e8
--- /dev/null
+++ b/net/ethernet/ether_addrs.c
@@ -0,0 +1,19 @@
+// SPDX-License-Identifier: GPL-2.0
+/* Various const global Ethernet addresses */
+
+#include <linux/etherdevice.h>
+
+const u8 ether_broadcast_addr[ETH_ALEN] __aligned(2) = {
+	0xff, 0xff, 0xff, 0xff, 0xff, 0xff
+};
+EXPORT_SYMBOL(ether_broadcast_addr);
+
+const u8 ether_zero_addr[ETH_ALEN] __aligned(2) = {
+	0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+EXPORT_SYMBOL(ether_zero_addr);
+
+const u8 ether_reserved_addr_base[ETH_ALEN] __aligned(2) = {
+	0x01, 0x80, 0xc2, 0x00, 0x00, 0x00
+};
+EXPORT_SYMBOL(ether_reserved_addr_base);
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
  2018-03-31  7:05 ` [PATCH 01/12] ethernet: Add generic ether_<foo>_addr addresses Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31 17:36   ` Andrew Lunn
  2018-04-01  0:18   ` [PATCH 02/12] " kbuild test robot
  2018-03-31  7:05 ` [PATCH 03/12] net: mac80211: Use global ether_broadcast_addr Joe Perches
                   ` (10 subsequent siblings)
  12 siblings, 2 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: Andrew Lunn, Vivien Didelot, Florian Fainelli, Stephen Hemminger
  Cc: David S. Miller, netdev, linux-kernel, bridge

eth_stp_addr is not in the same form as the other global ether_<foo>_addr
addresses like ether_broadcast_addr.

Convert it treewide.

Miscellanea:

o Add comment to the ether_stp_addr define to show it's for spanning-tree

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/dsa/lan9303-core.c | 4 ++--
 include/linux/etherdevice.h    | 3 ++-
 net/bridge/br_device.c         | 4 ++--
 3 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c
index fefa454f3e56..a6f015ef251a 100644
--- a/drivers/net/dsa/lan9303-core.c
+++ b/drivers/net/dsa/lan9303-core.c
@@ -789,7 +789,7 @@ static int lan9303_separate_ports(struct lan9303 *chip)
 {
 	int ret;
 
-	lan9303_alr_del_port(chip, eth_stp_addr, 0);
+	lan9303_alr_del_port(chip, ether_stp_addr, 0);
 	ret = lan9303_write_switch_reg(chip, LAN9303_SWE_PORT_MIRROR,
 				LAN9303_SWE_PORT_MIRROR_SNIFFER_PORT0 |
 				LAN9303_SWE_PORT_MIRROR_MIRRORED_PORT1 |
@@ -814,7 +814,7 @@ static void lan9303_bridge_ports(struct lan9303 *chip)
 
 	lan9303_write_switch_reg(chip, LAN9303_SWE_PORT_STATE,
 				 chip->swe_port_state);
-	lan9303_alr_add_port(chip, eth_stp_addr, 0, true);
+	lan9303_alr_add_port(chip, ether_stp_addr, 0, true);
 }
 
 static void lan9303_handle_reset(struct lan9303 *chip)
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
index 85d2486b2959..142da8043b24 100644
--- a/include/linux/etherdevice.h
+++ b/include/linux/etherdevice.h
@@ -70,7 +70,8 @@ extern const u8 ether_zero_addr[ETH_ALEN];	/* all zeros */
 /* Reserved Ethernet Addresses per IEEE 802.1Q */
 extern const u8 ether_reserved_addr_base[ETH_ALEN];
 
-#define eth_stp_addr ether_reserved_addr_base
+/* Ethernet bridge - spanning tree protocol */
+#define ether_stp_addr ether_reserved_addr_base
 
 /**
  * is_link_local_ether_addr - Determine if given Ethernet address is link-local
diff --git a/net/bridge/br_device.c b/net/bridge/br_device.c
index 278fc999d355..3abcf69d1976 100644
--- a/net/bridge/br_device.c
+++ b/net/bridge/br_device.c
@@ -1,4 +1,4 @@
-/*
+gg/*
  *	Device handling code
  *	Linux ethernet bridge
  *
@@ -431,7 +431,7 @@ void br_dev_setup(struct net_device *dev)
 	br->bridge_id.prio[0] = 0x80;
 	br->bridge_id.prio[1] = 0x00;
 
-	ether_addr_copy(br->group_addr, eth_stp_addr);
+	ether_addr_copy(br->group_addr, ether_stp_addr);
 
 	br->stp_enabled = BR_NO_STP;
 	br->group_fwd_mask = BR_GROUPFWD_DEFAULT;
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 03/12] net: mac80211: Use global ether_broadcast_addr
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
  2018-03-31  7:05 ` [PATCH 01/12] ethernet: Add generic ether_<foo>_addr addresses Joe Perches
  2018-03-31  7:05 ` [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31  7:05 ` [PATCH 04/12] bridge: netfilter: Use the new global ether_<foo>_addr arrays Joe Perches
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: Johannes Berg; +Cc: David S. Miller, linux-wireless, netdev, linux-kernel

Remove statics and use the new global ether_broadcast_addr instead
to save some overall object code size.

Signed-off-by: Joe Perches <joe@perches.com>
---
 net/mac80211/iface.c        |  5 +----
 net/mac80211/key.c          |  6 ++----
 net/mac80211/mesh_hwmp.c    | 19 ++++++++++---------
 net/mac80211/mesh_pathtbl.c |  8 ++++----
 4 files changed, 17 insertions(+), 21 deletions(-)

diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
index d13ba064951f..f203efc3c532 100644
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
@@ -1387,9 +1387,6 @@ static void ieee80211_recalc_smps_work(struct work_struct *work)
 static void ieee80211_setup_sdata(struct ieee80211_sub_if_data *sdata,
 				  enum nl80211_iftype type)
 {
-	static const u8 bssid_wildcard[ETH_ALEN] = {0xff, 0xff, 0xff,
-						    0xff, 0xff, 0xff};
-
 	/* clear type-dependent union */
 	memset(&sdata->u, 0, sizeof(sdata->u));
 
@@ -1442,7 +1439,7 @@ static void ieee80211_setup_sdata(struct ieee80211_sub_if_data *sdata,
 		ieee80211_sta_setup_sdata(sdata);
 		break;
 	case NL80211_IFTYPE_OCB:
-		sdata->vif.bss_conf.bssid = bssid_wildcard;
+		sdata->vif.bss_conf.bssid = ether_broadcast_addr;
 		ieee80211_ocb_setup_sdata(sdata);
 		break;
 	case NL80211_IFTYPE_ADHOC:
diff --git a/net/mac80211/key.c b/net/mac80211/key.c
index aee05ec3f7ea..429f0f4bdc0d 100644
--- a/net/mac80211/key.c
+++ b/net/mac80211/key.c
@@ -53,8 +53,6 @@
  * remove the key which waits for an RCU grace period.
  */
 
-static const u8 bcast_addr[ETH_ALEN] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
-
 static void assert_key_lock(struct ieee80211_local *local)
 {
 	lockdep_assert_held(&local->key_mtx);
@@ -196,7 +194,7 @@ static int ieee80211_key_enable_hw_accel(struct ieee80211_key *key)
 		sdata_err(sdata,
 			  "failed to set key (%d, %pM) to hardware (%d)\n",
 			  key->conf.keyidx,
-			  sta ? sta->sta.addr : bcast_addr, ret);
+			  sta ? sta->sta.addr : ether_broadcast_addr, ret);
 
  out_unsupported:
 	switch (key->conf.cipher) {
@@ -253,7 +251,7 @@ static void ieee80211_key_disable_hw_accel(struct ieee80211_key *key)
 		sdata_err(sdata,
 			  "failed to remove key (%d, %pM) from hardware (%d)\n",
 			  key->conf.keyidx,
-			  sta ? sta->sta.addr : bcast_addr, ret);
+			  sta ? sta->sta.addr : ether_broadcast_addr, ret);
 
 	key->flags &= ~KEY_FLAG_UPLOADED_TO_HARDWARE;
 }
diff --git a/net/mac80211/mesh_hwmp.c b/net/mac80211/mesh_hwmp.c
index 35ad3983ae4b..23027ea80593 100644
--- a/net/mac80211/mesh_hwmp.c
+++ b/net/mac80211/mesh_hwmp.c
@@ -97,8 +97,6 @@ enum mpath_frame_type {
 	MPATH_RANN
 };
 
-static const u8 broadcast_addr[ETH_ALEN] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
-
 static int mesh_path_sel_frame_tx(enum mpath_frame_type action, u8 flags,
 				  const u8 *orig_addr, u32 orig_sn,
 				  u8 target_flags, const u8 *target,
@@ -645,7 +643,7 @@ static void hwmp_preq_frame_process(struct ieee80211_sub_if_data *sdata,
 		preq_id = PREQ_IE_PREQ_ID(preq_elem);
 		hopcount = PREQ_IE_HOPCOUNT(preq_elem) + 1;
 		da = (mpath && mpath->is_root) ?
-			mpath->rann_snd_addr : broadcast_addr;
+			mpath->rann_snd_addr : ether_broadcast_addr;
 
 		if (flags & IEEE80211_PREQ_PROACTIVE_PREP_FLAG) {
 			target_addr = PREQ_IE_TARGET_ADDR(preq_elem);
@@ -779,7 +777,7 @@ static void hwmp_perr_frame_process(struct ieee80211_sub_if_data *sdata,
 				goto endperr;
 			mesh_path_error_tx(sdata, ttl, target_addr,
 					   target_sn, target_rcode,
-					   broadcast_addr);
+					   ether_broadcast_addr);
 		} else
 			spin_unlock_bh(&mpath->state_lock);
 	}
@@ -877,7 +875,8 @@ static void hwmp_rann_frame_process(struct ieee80211_sub_if_data *sdata,
 
 	if (ifmsh->mshcfg.dot11MeshForwarding) {
 		mesh_path_sel_frame_tx(MPATH_RANN, flags, orig_addr,
-				       orig_sn, 0, NULL, 0, broadcast_addr,
+				       orig_sn, 0, NULL, 0,
+				       ether_broadcast_addr,
 				       hopcount, ttl, interval,
 				       new_metric, 0, sdata);
 	}
@@ -1080,7 +1079,7 @@ void mesh_path_start_discovery(struct ieee80211_sub_if_data *sdata)
 		target_flags &= ~IEEE80211_PREQ_TO_FLAG;
 
 	spin_unlock_bh(&mpath->state_lock);
-	da = (mpath->is_root) ? mpath->rann_snd_addr : broadcast_addr;
+	da = (mpath->is_root) ? mpath->rann_snd_addr : ether_broadcast_addr;
 	mesh_path_sel_frame_tx(MPATH_PREQ, 0, sdata->vif.addr, ifmsh->sn,
 			       target_flags, mpath->dst, mpath->sn, da, 0,
 			       ttl, lifetime, 0, ifmsh->preq_id++, sdata);
@@ -1244,7 +1243,8 @@ void mesh_path_tx_root_frame(struct ieee80211_sub_if_data *sdata)
 	switch (ifmsh->mshcfg.dot11MeshHWMPRootMode) {
 	case IEEE80211_PROACTIVE_RANN:
 		mesh_path_sel_frame_tx(MPATH_RANN, flags, sdata->vif.addr,
-				       ++ifmsh->sn, 0, NULL, 0, broadcast_addr,
+				       ++ifmsh->sn, 0, NULL, 0,
+				       ether_broadcast_addr,
 				       0, ifmsh->mshcfg.element_ttl,
 				       interval, 0, 0, sdata);
 		break;
@@ -1257,8 +1257,9 @@ void mesh_path_tx_root_frame(struct ieee80211_sub_if_data *sdata)
 				IEEE80211_PREQ_USN_FLAG;
 		mesh_path_sel_frame_tx(MPATH_PREQ, flags, sdata->vif.addr,
 				       ++ifmsh->sn, target_flags,
-				       (u8 *) broadcast_addr, 0, broadcast_addr,
-				       0, ifmsh->mshcfg.element_ttl, interval,
+				       ether_broadcast_addr, 0,
+				       ether_broadcast_addr, 0,
+				       ifmsh->mshcfg.element_ttl, interval,
 				       0, ifmsh->preq_id++, sdata);
 		break;
 	default:
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c
index a5125624a76d..8b16f7315fac 100644
--- a/net/mac80211/mesh_pathtbl.c
+++ b/net/mac80211/mesh_pathtbl.c
@@ -501,7 +501,6 @@ void mesh_plink_broken(struct sta_info *sta)
 {
 	struct ieee80211_sub_if_data *sdata = sta->sdata;
 	struct mesh_table *tbl = sdata->u.mesh.mesh_paths;
-	static const u8 bcast[ETH_ALEN] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
 	struct mesh_path *mpath;
 	struct rhashtable_iter iter;
 	int ret;
@@ -525,9 +524,10 @@ void mesh_plink_broken(struct sta_info *sta)
 			++mpath->sn;
 			spin_unlock_bh(&mpath->state_lock);
 			mesh_path_error_tx(sdata,
-				sdata->u.mesh.mshcfg.element_ttl,
-				mpath->dst, mpath->sn,
-				WLAN_REASON_MESH_PATH_DEST_UNREACHABLE, bcast);
+					   sdata->u.mesh.mshcfg.element_ttl,
+					   mpath->dst, mpath->sn,
+					   WLAN_REASON_MESH_PATH_DEST_UNREACHABLE,
+					   ether_broadcast_addr);
 		}
 	}
 	rhashtable_walk_stop(&iter);
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 04/12] bridge: netfilter: Use the new global ether_<foo>_addr arrays
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (2 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 03/12] net: mac80211: Use global ether_broadcast_addr Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31 18:28   ` Pablo Neira Ayuso
  2018-03-31  7:05 ` [PATCH 05/12] net: atm: Use ether_broadcast_addr Joe Perches
                   ` (8 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: Pablo Neira Ayuso, Jozsef Kadlecsik, Florian Westphal
  Cc: Stephen Hemminger, David S. Miller, netfilter-devel, coreteam,
	bridge, netdev, linux-kernel

Remove the local consts and use the new globals.

Signed-off-by: Joe Perches <joe@perches.com>
---
 net/bridge/netfilter/ebt_stp.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/net/bridge/netfilter/ebt_stp.c b/net/bridge/netfilter/ebt_stp.c
index 3140eb912d7e..2b7479cc0140 100644
--- a/net/bridge/netfilter/ebt_stp.c
+++ b/net/bridge/netfilter/ebt_stp.c
@@ -153,8 +153,6 @@ ebt_stp_mt(const struct sk_buff *skb, struct xt_action_param *par)
 static int ebt_stp_mt_check(const struct xt_mtchk_param *par)
 {
 	const struct ebt_stp_info *info = par->matchinfo;
-	const u8 bridge_ula[6] = {0x01, 0x80, 0xc2, 0x00, 0x00, 0x00};
-	const u8 msk[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
 	const struct ebt_entry *e = par->entryinfo;
 
 	if (info->bitmask & ~EBT_STP_MASK || info->invflags & ~EBT_STP_MASK ||
@@ -162,8 +160,8 @@ static int ebt_stp_mt_check(const struct xt_mtchk_param *par)
 		return -EINVAL;
 	/* Make sure the match only receives stp frames */
 	if (!par->nft_compat &&
-	    (!ether_addr_equal(e->destmac, bridge_ula) ||
-	     !ether_addr_equal(e->destmsk, msk) ||
+	    (!ether_addr_equal(e->destmac, ether_stp_addr) ||
+	     !ether_addr_equal(e->destmsk, ether_broadcast_addr) ||
 	     !(e->bitmask & EBT_DESTMAC)))
 		return -EINVAL;
 
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 05/12] net: atm: Use ether_broadcast_addr
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (3 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 04/12] bridge: netfilter: Use the new global ether_<foo>_addr arrays Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31  7:05 ` [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address Joe Perches
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: linux-kernel; +Cc: David S. Miller, netdev

Use the new global instead of a local static to reduce object code size
a tiny bit.

Signed-off-by: Joe Perches <joe@perches.com>
---
 net/atm/lec.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/net/atm/lec.c b/net/atm/lec.c
index 01d5d20a6eb1..ec47b45bd836 100644
--- a/net/atm/lec.c
+++ b/net/atm/lec.c
@@ -116,8 +116,6 @@ static struct lane2_ops lane2_ops = {
 	.associate_indicator = NULL             /* spec 3.1.5 */
 };
 
-static unsigned char bus_mac[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
-
 /* Device structures */
 static struct net_device *dev_lec[MAX_LEC_ITF];
 
@@ -1726,7 +1724,7 @@ static struct atm_vcc *lec_arp_resolve(struct lec_priv *priv,
 		case 1:
 			return priv->mcast_vcc;
 		case 2:	/* LANE2 wants arp for multicast addresses */
-			if (ether_addr_equal(mac_to_find, bus_mac))
+			if (ether_addr_equal(mac_to_find, ether_broadcast_addr))
 				return priv->mcast_vcc;
 			break;
 		default:
@@ -1954,7 +1952,7 @@ lec_vcc_added(struct lec_priv *priv, const struct atmlec_ioc *ioc_data,
 	if (ioc_data->receive == 2) {
 		pr_debug("LEC_ARP: Attaching mcast forward\n");
 #if 0
-		entry = lec_arp_find(priv, bus_mac);
+		entry = lec_arp_find(priv, ether_broadcast_addr);
 		if (!entry) {
 			pr_info("LEC_ARP: Multicast entry not found!\n");
 			goto out;
@@ -1963,7 +1961,7 @@ lec_vcc_added(struct lec_priv *priv, const struct atmlec_ioc *ioc_data,
 		entry->recv_vcc = vcc;
 		entry->old_recv_push = old_push;
 #endif
-		entry = make_entry(priv, bus_mac);
+		entry = make_entry(priv, ether_broadcast_addr);
 		if (entry == NULL)
 			goto out;
 		del_timer(&entry->timer);
@@ -1988,7 +1986,7 @@ lec_vcc_added(struct lec_priv *priv, const struct atmlec_ioc *ioc_data,
 			 ioc_data->atm_addr[14], ioc_data->atm_addr[15],
 			 ioc_data->atm_addr[16], ioc_data->atm_addr[17],
 			 ioc_data->atm_addr[18], ioc_data->atm_addr[19]);
-		entry = make_entry(priv, bus_mac);
+		entry = make_entry(priv, ether_broadcast_addr);
 		if (entry == NULL)
 			goto out;
 		memcpy(entry->atm_addr, ioc_data->atm_addr, ATM_ESA_LEN);
@@ -2071,7 +2069,7 @@ lec_vcc_added(struct lec_priv *priv, const struct atmlec_ioc *ioc_data,
 	 * Not found, snatch address from first data packet that arrives
 	 * from this vcc
 	 */
-	entry = make_entry(priv, bus_mac);
+	entry = make_entry(priv, ether_broadcast_addr);
 	if (!entry)
 		goto out;
 	entry->vcc = vcc;
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (4 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 05/12] net: atm: Use ether_broadcast_addr Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31 14:01   ` Pkshih
  2018-04-05 12:39   ` Kalle Valo
  2018-03-31  7:05 ` [PATCH 07/12] brcmfmac: Convert ALLFFMAC to ether_broadcast_addr Joe Perches
                   ` (6 subsequent siblings)
  12 siblings, 2 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: Christian Lamparter, Amitkumar Karwar, Nishant Sarmukadam,
	Ganapathi Bhat, Xinming Hu, Ping-Ke Shih, Jussi Kivilinna,
	Kalle Valo
  Cc: linux-wireless, netdev, linux-kernel, b43-dev

Use the new ether_broadcast_addr global instead to save some object code.

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/wireless/admtek/adm8211.c           | 3 +--
 drivers/net/wireless/ath/carl9170/mac.c         | 4 +---
 drivers/net/wireless/broadcom/b43/main.c        | 3 +--
 drivers/net/wireless/marvell/mwifiex/cfg80211.c | 3 +--
 drivers/net/wireless/realtek/rtlwifi/core.c     | 5 ++---
 drivers/net/wireless/rndis_wlan.c               | 6 +-----
 drivers/net/wireless/ti/wl1251/main.c           | 5 +----
 drivers/net/wireless/ti/wlcore/main.c           | 5 +----
 8 files changed, 9 insertions(+), 25 deletions(-)

diff --git a/drivers/net/wireless/admtek/adm8211.c b/drivers/net/wireless/admtek/adm8211.c
index 3b0802fc5bf5..0aa2d114d5b3 100644
--- a/drivers/net/wireless/admtek/adm8211.c
+++ b/drivers/net/wireless/admtek/adm8211.c
@@ -1354,7 +1354,6 @@ static void adm8211_configure_filter(struct ieee80211_hw *dev,
 				     unsigned int *total_flags,
 				     u64 multicast)
 {
-	static const u8 bcast[ETH_ALEN] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
 	struct adm8211_priv *priv = dev->priv;
 	unsigned int new_flags;
 	u32 mc_filter[2];
@@ -1385,7 +1384,7 @@ static void adm8211_configure_filter(struct ieee80211_hw *dev,
 		__clear_bit(IEEE80211_HW_RX_INCLUDES_FCS, dev->flags);
 
 	if (*total_flags & FIF_BCN_PRBRESP_PROMISC)
-		adm8211_set_bssid(dev, bcast);
+		adm8211_set_bssid(dev, ether_broadcast_addr);
 	else
 		adm8211_set_bssid(dev, priv->bssid);
 
diff --git a/drivers/net/wireless/ath/carl9170/mac.c b/drivers/net/wireless/ath/carl9170/mac.c
index 7d4a72dc98db..b1c608db047c 100644
--- a/drivers/net/wireless/ath/carl9170/mac.c
+++ b/drivers/net/wireless/ath/carl9170/mac.c
@@ -476,10 +476,8 @@ int carl9170_upload_key(struct ar9170 *ar, const u8 id, const u8 *mac,
 			const int keylen)
 {
 	struct carl9170_set_key_cmd key = { };
-	static const u8 bcast[ETH_ALEN] = {
-		0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
 
-	mac = mac ? : bcast;
+	mac = mac ? : ether_broadcast_addr;
 
 	key.user = cpu_to_le16(id);
 	key.keyId = cpu_to_le16(keyidx);
diff --git a/drivers/net/wireless/broadcom/b43/main.c b/drivers/net/wireless/broadcom/b43/main.c
index b37e7391f55d..f23d60064691 100644
--- a/drivers/net/wireless/broadcom/b43/main.c
+++ b/drivers/net/wireless/broadcom/b43/main.c
@@ -4185,7 +4185,6 @@ static int b43_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	u8 algorithm;
 	u8 index;
 	int err;
-	static const u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
 
 	if (modparam_nohwcrypt)
 		return -ENOSPC; /* User disabled HW-crypto */
@@ -4293,7 +4292,7 @@ static int b43_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 		b43dbg(wl, "%s hardware based encryption for keyidx: %d, "
 		       "mac: %pM\n",
 		       cmd == SET_KEY ? "Using" : "Disabling", key->keyidx,
-		       sta ? sta->addr : bcast_addr);
+		       sta ? sta->addr : ether_broadcast_addr);
 		b43_dump_keymemory(dev);
 	}
 	mutex_unlock(&wl->mutex);
diff --git a/drivers/net/wireless/marvell/mwifiex/cfg80211.c b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
index 7f7e9de2db1c..400a4a67d545 100644
--- a/drivers/net/wireless/marvell/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/marvell/mwifiex/cfg80211.c
@@ -174,7 +174,6 @@ mwifiex_cfg80211_del_key(struct wiphy *wiphy, struct net_device *netdev,
 static int
 mwifiex_form_mgmt_frame(struct sk_buff *skb, const u8 *buf, size_t len)
 {
-	u8 addr[ETH_ALEN] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
 	u16 pkt_len;
 	u32 tx_control = 0, pkt_type = PKT_TYPE_MGMT;
 
@@ -191,7 +190,7 @@ mwifiex_form_mgmt_frame(struct sk_buff *skb, const u8 *buf, size_t len)
 
 	/* Add packet data and address4 */
 	skb_put_data(skb, buf, sizeof(struct ieee80211_hdr_3addr));
-	skb_put_data(skb, addr, ETH_ALEN);
+	skb_put_data(skb, ether_broadcast_addr, ETH_ALEN);
 	skb_put_data(skb, buf + sizeof(struct ieee80211_hdr_3addr),
 		     len - sizeof(struct ieee80211_hdr_3addr));
 
diff --git a/drivers/net/wireless/realtek/rtlwifi/core.c b/drivers/net/wireless/realtek/rtlwifi/core.c
index cfea57efa7f4..8c534a93dad5 100644
--- a/drivers/net/wireless/realtek/rtlwifi/core.c
+++ b/drivers/net/wireless/realtek/rtlwifi/core.c
@@ -1527,7 +1527,6 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	bool wep_only = false;
 	int err = 0;
 	u8 mac_addr[ETH_ALEN];
-	u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
 
 	rtlpriv->btcoexist.btc_info.in_4way = false;
 
@@ -1544,7 +1543,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,
 		 "%s hardware based encryption for keyidx: %d, mac: %pM\n",
 		  cmd == SET_KEY ? "Using" : "Disabling", key->keyidx,
-		  sta ? sta->addr : bcast_addr);
+		  sta ? sta->addr : ether_broadcast_addr);
 	rtlpriv->sec.being_setkey = true;
 	rtl_ips_nic_on(hw);
 	mutex_lock(&rtlpriv->locks.conf_mutex);
@@ -1649,7 +1648,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 			memcpy(rtlpriv->sec.key_buf[key_idx],
 			       key->key, key->keylen);
 			rtlpriv->sec.key_len[key_idx] = key->keylen;
-			memcpy(mac_addr, bcast_addr, ETH_ALEN);
+			memcpy(mac_addr, ether_broadcast_addr, ETH_ALEN);
 		} else {	/* pairwise key */
 			RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,
 				 "set pairwise key\n");
diff --git a/drivers/net/wireless/rndis_wlan.c b/drivers/net/wireless/rndis_wlan.c
index 9935bd09db1f..da0c4f790dd0 100644
--- a/drivers/net/wireless/rndis_wlan.c
+++ b/drivers/net/wireless/rndis_wlan.c
@@ -1021,11 +1021,7 @@ static int set_bssid(struct usbnet *usbdev, const u8 *bssid)
 
 static int clear_bssid(struct usbnet *usbdev)
 {
-	static const u8 broadcast_mac[ETH_ALEN] = {
-		0xff, 0xff, 0xff, 0xff, 0xff, 0xff
-	};
-
-	return set_bssid(usbdev, broadcast_mac);
+	return set_bssid(usbdev, ether_broadcast_addr);
 }
 
 static int get_bssid(struct usbnet *usbdev, u8 bssid[ETH_ALEN])
diff --git a/drivers/net/wireless/ti/wl1251/main.c b/drivers/net/wireless/ti/wl1251/main.c
index bd8641ad953b..442a557ad2e2 100644
--- a/drivers/net/wireless/ti/wl1251/main.c
+++ b/drivers/net/wireless/ti/wl1251/main.c
@@ -887,9 +887,6 @@ static int wl1251_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 	const u8 *addr;
 	int ret;
 
-	static const u8 bcast_addr[ETH_ALEN] =
-		{ 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
-
 	wl1251_debug(DEBUG_MAC80211, "mac80211 set key");
 
 	wl_cmd = kzalloc(sizeof(*wl_cmd), GFP_KERNEL);
@@ -898,7 +895,7 @@ static int wl1251_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
 		goto out;
 	}
 
-	addr = sta ? sta->addr : bcast_addr;
+	addr = sta ? sta->addr : ether_broadcast_addr;
 
 	wl1251_debug(DEBUG_CRYPT, "CMD: 0x%x", cmd);
 	wl1251_dump(DEBUG_CRYPT, "ADDR: ", addr, ETH_ALEN);
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c
index 3a51ab116e79..a4a408f48eeb 100644
--- a/drivers/net/wireless/ti/wlcore/main.c
+++ b/drivers/net/wireless/ti/wlcore/main.c
@@ -3392,11 +3392,8 @@ static int wl1271_set_key(struct wl1271 *wl, struct wl12xx_vif *wlvif,
 			return ret;
 	} else {
 		const u8 *addr;
-		static const u8 bcast_addr[ETH_ALEN] = {
-			0xff, 0xff, 0xff, 0xff, 0xff, 0xff
-		};
 
-		addr = sta ? sta->addr : bcast_addr;
+		addr = sta ? sta->addr : ether_broadcast_addr;
 
 		if (is_zero_ether_addr(addr)) {
 			/* We dont support TX only encryption */
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 07/12] brcmfmac: Convert ALLFFMAC to ether_broadcast_addr
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (5 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-04-05 19:00   ` Arend van Spriel
  2018-03-31  7:05 ` [PATCH 08/12] iwlegacy: Remove EXPORT_SYMBOL(il_bcast_addr) and use ether_broadcast_addr Joe Perches
                   ` (5 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: linux-kernel
  Cc: Arend van Spriel, Franky Lin, Hante Meuleman, Chi-Hsien Lin,
	Wright Feng, Kalle Valo, linux-wireless, brcm80211-dev-list.pdl,
	brcm80211-dev-list, netdev

Remove the local ALLFFMAC extern array and use the new global instead.

Miscellanea:

o Convert char *mac to const char *mac as it can't be modified

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c   | 2 --
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.h   | 2 --
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/flowring.c | 8 ++++----
 3 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
index 105b8774fca9..cd3651069d0c 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
@@ -36,8 +36,6 @@ MODULE_AUTHOR("Broadcom Corporation");
 MODULE_DESCRIPTION("Broadcom 802.11 wireless LAN fullmac driver.");
 MODULE_LICENSE("Dual BSD/GPL");
 
-const u8 ALLFFMAC[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
-
 #define BRCMF_DEFAULT_SCAN_CHANNEL_TIME	40
 #define BRCMF_DEFAULT_SCAN_UNASSOC_TIME	40
 
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.h b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.h
index ef914619e8e1..a34642cb4d2f 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.h
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.h
@@ -19,8 +19,6 @@
 #include <linux/platform_data/brcmfmac.h>
 #include "fwil_types.h"
 
-extern const u8 ALLFFMAC[ETH_ALEN];
-
 #define BRCMF_FW_ALTPATH_LEN			256
 
 /* Definitions for the module global and device specific settings are defined
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/flowring.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/flowring.c
index d0b738da2458..f042531dd43c 100644
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/flowring.c
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/flowring.c
@@ -73,13 +73,13 @@ u32 brcmf_flowring_lookup(struct brcmf_flowring *flow, u8 da[ETH_ALEN],
 	bool found;
 	bool sta;
 	u8 fifo;
-	u8 *mac;
+	const u8 *mac;
 
 	fifo = brcmf_flowring_prio2fifo[prio];
 	sta = (flow->addr_mode[ifidx] == ADDR_INDIRECT);
 	mac = da;
 	if ((!sta) && (is_multicast_ether_addr(da))) {
-		mac = (u8 *)ALLFFMAC;
+		mac = ether_broadcast_addr;
 		fifo = 0;
 	}
 	if ((sta) && (flow->tdls_active) &&
@@ -118,13 +118,13 @@ u32 brcmf_flowring_create(struct brcmf_flowring *flow, u8 da[ETH_ALEN],
 	bool found;
 	u8 fifo;
 	bool sta;
-	u8 *mac;
+	const u8 *mac;
 
 	fifo = brcmf_flowring_prio2fifo[prio];
 	sta = (flow->addr_mode[ifidx] == ADDR_INDIRECT);
 	mac = da;
 	if ((!sta) && (is_multicast_ether_addr(da))) {
-		mac = (u8 *)ALLFFMAC;
+		mac = ether_broadcast_addr;
 		fifo = 0;
 	}
 	if ((sta) && (flow->tdls_active) &&
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 08/12] iwlegacy: Remove EXPORT_SYMBOL(il_bcast_addr) and use ether_broadcast_addr
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (6 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 07/12] brcmfmac: Convert ALLFFMAC to ether_broadcast_addr Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31  7:05 ` [PATCH 09/12] iwlwifi: Remove local iwl_bcast_addr " Joe Perches
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: Stanislaw Gruszka; +Cc: Kalle Valo, linux-wireless, netdev, linux-kernel

Remove the local array and use the new global instead to save some small
amount of object code.

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/wireless/intel/iwlegacy/3945-mac.c | 2 +-
 drivers/net/wireless/intel/iwlegacy/4965-mac.c | 2 +-
 drivers/net/wireless/intel/iwlegacy/common.c   | 3 ---
 drivers/net/wireless/intel/iwlegacy/common.h   | 1 -
 4 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/net/wireless/intel/iwlegacy/3945-mac.c b/drivers/net/wireless/intel/iwlegacy/3945-mac.c
index 62a9794f952b..770c7aa13434 100644
--- a/drivers/net/wireless/intel/iwlegacy/3945-mac.c
+++ b/drivers/net/wireless/intel/iwlegacy/3945-mac.c
@@ -2352,7 +2352,7 @@ il3945_alloc_bcast_station(struct il_priv *il)
 	u8 sta_id;
 
 	spin_lock_irqsave(&il->sta_lock, flags);
-	sta_id = il_prep_station(il, il_bcast_addr, false, NULL);
+	sta_id = il_prep_station(il, ether_broadcast_addr, false, NULL);
 	if (sta_id == IL_INVALID_STATION) {
 		IL_ERR("Unable to prepare broadcast station\n");
 		spin_unlock_irqrestore(&il->sta_lock, flags);
diff --git a/drivers/net/wireless/intel/iwlegacy/4965-mac.c b/drivers/net/wireless/intel/iwlegacy/4965-mac.c
index 562e94870a9c..5772cbd9291c 100644
--- a/drivers/net/wireless/intel/iwlegacy/4965-mac.c
+++ b/drivers/net/wireless/intel/iwlegacy/4965-mac.c
@@ -3536,7 +3536,7 @@ il4965_alloc_bcast_station(struct il_priv *il)
 	u8 sta_id;
 
 	spin_lock_irqsave(&il->sta_lock, flags);
-	sta_id = il_prep_station(il, il_bcast_addr, false, NULL);
+	sta_id = il_prep_station(il, ether_broadcast_addr, false, NULL);
 	if (sta_id == IL_INVALID_STATION) {
 		IL_ERR("Unable to prepare broadcast station\n");
 		spin_unlock_irqrestore(&il->sta_lock, flags);
diff --git a/drivers/net/wireless/intel/iwlegacy/common.c b/drivers/net/wireless/intel/iwlegacy/common.c
index 063e19ced7c8..5853b1dedea1 100644
--- a/drivers/net/wireless/intel/iwlegacy/common.c
+++ b/drivers/net/wireless/intel/iwlegacy/common.c
@@ -3378,9 +3378,6 @@ MODULE_PARM_DESC(bt_coex_active, "enable wifi/bluetooth co-exist");
 u32 il_debug_level;
 EXPORT_SYMBOL(il_debug_level);
 
-const u8 il_bcast_addr[ETH_ALEN] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
-EXPORT_SYMBOL(il_bcast_addr);
-
 #define MAX_BIT_RATE_40_MHZ 150	/* Mbps */
 #define MAX_BIT_RATE_20_MHZ 72	/* Mbps */
 static void
diff --git a/drivers/net/wireless/intel/iwlegacy/common.h b/drivers/net/wireless/intel/iwlegacy/common.h
index dc6a74a05983..6a6b43c5e4d7 100644
--- a/drivers/net/wireless/intel/iwlegacy/common.h
+++ b/drivers/net/wireless/intel/iwlegacy/common.h
@@ -860,7 +860,6 @@ struct il_hw_params {
  *
  ****************************************************************************/
 void il4965_update_chain_flags(struct il_priv *il);
-extern const u8 il_bcast_addr[ETH_ALEN];
 int il_queue_space(const struct il_queue *q);
 static inline int
 il_queue_used(const struct il_queue *q, int i)
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 09/12] iwlwifi: Remove local iwl_bcast_addr and use ether_broadcast_addr
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (7 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 08/12] iwlegacy: Remove EXPORT_SYMBOL(il_bcast_addr) and use ether_broadcast_addr Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-07-07  7:40   ` Luciano Coelho
  2018-03-31  7:05 ` [PATCH 10/12] mvpp2: Use ether_broadcast_addr instead of a local array Joe Perches
                   ` (3 subsequent siblings)
  12 siblings, 1 reply; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: linux-kernel
  Cc: Johannes Berg, Emmanuel Grumbach, Luca Coelho,
	Intel Linux Wireless, Kalle Valo, linux-wireless, netdev

Use the new global to save a little bit of object code.

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/wireless/intel/iwlwifi/dvm/dev.h  | 1 -
 drivers/net/wireless/intel/iwlwifi/dvm/scan.c | 2 +-
 drivers/net/wireless/intel/iwlwifi/dvm/sta.c  | 4 +---
 3 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/dvm/dev.h b/drivers/net/wireless/intel/iwlwifi/dvm/dev.h
index cceb4cd8e501..157cc21c5dfb 100644
--- a/drivers/net/wireless/intel/iwlwifi/dvm/dev.h
+++ b/drivers/net/wireless/intel/iwlwifi/dvm/dev.h
@@ -271,7 +271,6 @@ struct iwl_sensitivity_ranges {
  *
  ****************************************************************************/
 void iwl_update_chain_flags(struct iwl_priv *priv);
-extern const u8 iwl_bcast_addr[ETH_ALEN];
 
 #define IWL_OPERATION_MODE_AUTO     0
 #define IWL_OPERATION_MODE_HT_ONLY  1
diff --git a/drivers/net/wireless/intel/iwlwifi/dvm/scan.c b/drivers/net/wireless/intel/iwlwifi/dvm/scan.c
index 17e6a32384d3..e40d9b9fc4a9 100644
--- a/drivers/net/wireless/intel/iwlwifi/dvm/scan.c
+++ b/drivers/net/wireless/intel/iwlwifi/dvm/scan.c
@@ -871,7 +871,7 @@ static int iwlagn_request_scan(struct iwl_priv *priv, struct ieee80211_vif *vif)
 		/* use bcast addr, will not be transmitted but must be valid */
 		cmd_len = iwl_fill_probe_req(
 					(struct ieee80211_mgmt *)scan->data,
-					iwl_bcast_addr, NULL, 0,
+					ether_broadcast_addr, NULL, 0,
 					NULL, 0,
 					scan_cmd_size - sizeof(*scan));
 		break;
diff --git a/drivers/net/wireless/intel/iwlwifi/dvm/sta.c b/drivers/net/wireless/intel/iwlwifi/dvm/sta.c
index de6ec9b7ace4..177a366f7ad3 100644
--- a/drivers/net/wireless/intel/iwlwifi/dvm/sta.c
+++ b/drivers/net/wireless/intel/iwlwifi/dvm/sta.c
@@ -32,8 +32,6 @@
 #include "dev.h"
 #include "agn.h"
 
-const u8 iwl_bcast_addr[ETH_ALEN] = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
-
 static int iwl_sta_ucode_activate(struct iwl_priv *priv, u8 sta_id)
 {
 	lockdep_assert_held(&priv->sta_lock);
@@ -1287,7 +1285,7 @@ int iwlagn_alloc_bcast_station(struct iwl_priv *priv,
 	u8 sta_id;
 
 	spin_lock_bh(&priv->sta_lock);
-	sta_id = iwl_prep_station(priv, ctx, iwl_bcast_addr, false, NULL);
+	sta_id = iwl_prep_station(priv, ctx, ether_broadcast_addr, false, NULL);
 	if (sta_id == IWL_INVALID_STATION) {
 		IWL_ERR(priv, "Unable to prepare broadcast station\n");
 		spin_unlock_bh(&priv->sta_lock);
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 10/12] mvpp2: Use ether_broadcast_addr instead of a local array
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (8 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 09/12] iwlwifi: Remove local iwl_bcast_addr " Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31  7:05 ` [PATCH 11/12] qlogic: Convert local bcast_addr to global ether_broadcast_addr Joe Perches
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: linux-kernel; +Cc: netdev

Save a small bit of object code by using the new global instead.

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/ethernet/marvell/mvpp2.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/marvell/mvpp2.c b/drivers/net/ethernet/marvell/mvpp2.c
index 7fc1bbf51c44..a848b92f5961 100644
--- a/drivers/net/ethernet/marvell/mvpp2.c
+++ b/drivers/net/ethernet/marvell/mvpp2.c
@@ -7345,11 +7345,9 @@ static int mvpp2_open(struct net_device *dev)
 {
 	struct mvpp2_port *port = netdev_priv(dev);
 	struct mvpp2 *priv = port->priv;
-	unsigned char mac_bcast[ETH_ALEN] = {
-			0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
 	int err;
 
-	err = mvpp2_prs_mac_da_accept(port, mac_bcast, true);
+	err = mvpp2_prs_mac_da_accept(port, ether_broadcast_addr, true);
 	if (err) {
 		netdev_err(dev, "mvpp2_prs_mac_da_accept BC failed\n");
 		return err;
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 11/12] qlogic: Convert local bcast_addr to global ether_broadcast_addr
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (9 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 10/12] mvpp2: Use ether_broadcast_addr instead of a local array Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-03-31  7:05 ` [PATCH 12/12] ethernet: Use ether_zero_addr instead of local statics Joe Perches
  2018-04-05 13:27 ` [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Felix Fietkau
  12 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: Manish Chopra, Rahul Verma, Dept-GELinuxNICDev, Harish Patil
  Cc: netdev, linux-kernel

Use the new global instead of local statics to save a bit of object code.

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c       | 5 +----
 drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c           | 6 ++----
 drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c | 6 ++----
 3 files changed, 5 insertions(+), 12 deletions(-)

diff --git a/drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c b/drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c
index 1cd39c9a0345..bd21aa3d5833 100644
--- a/drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c
+++ b/drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c
@@ -668,9 +668,6 @@ static void netxen_p3_nic_set_multi(struct net_device *netdev)
 {
 	struct netxen_adapter *adapter = netdev_priv(netdev);
 	struct netdev_hw_addr *ha;
-	static const u8 bcast_addr[ETH_ALEN] = {
-		0xff, 0xff, 0xff, 0xff, 0xff, 0xff
-	};
 	u32 mode = VPORT_MISS_MODE_DROP;
 	LIST_HEAD(del_list);
 	struct list_head *head;
@@ -682,7 +679,7 @@ static void netxen_p3_nic_set_multi(struct net_device *netdev)
 	list_splice_tail_init(&adapter->mac_list, &del_list);
 
 	nx_p3_nic_add_mac(adapter, adapter->mac_addr, &del_list);
-	nx_p3_nic_add_mac(adapter, bcast_addr, &del_list);
+	nx_p3_nic_add_mac(adapter, ether_broadcast_addr, &del_list);
 
 	if (netdev->flags & IFF_PROMISC) {
 		mode = VPORT_MISS_MODE_ACCEPT_ALL;
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c
index 7848cf04b29a..948cb7ae9758 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_hw.c
@@ -542,9 +542,6 @@ static void __qlcnic_set_multi(struct net_device *netdev, u16 vlan)
 	struct qlcnic_adapter *adapter = netdev_priv(netdev);
 	struct qlcnic_hardware_context *ahw = adapter->ahw;
 	struct netdev_hw_addr *ha;
-	static const u8 bcast_addr[ETH_ALEN] = {
-		0xff, 0xff, 0xff, 0xff, 0xff, 0xff
-	};
 	u32 mode = VPORT_MISS_MODE_DROP;
 
 	if (!test_bit(__QLCNIC_FW_ATTACHED, &adapter->state))
@@ -552,7 +549,8 @@ static void __qlcnic_set_multi(struct net_device *netdev, u16 vlan)
 
 	qlcnic_nic_add_mac(adapter, adapter->mac_addr, vlan,
 			   QLCNIC_UNICAST_MAC);
-	qlcnic_nic_add_mac(adapter, bcast_addr, vlan, QLCNIC_BROADCAST_MAC);
+	qlcnic_nic_add_mac(adapter, ether_broadcast_addr, vlan,
+			   QLCNIC_BROADCAST_MAC);
 
 	if (netdev->flags & IFF_PROMISC) {
 		if (!(adapter->flags & QLCNIC_PROMISC_DISABLED))
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c
index c58180f40844..17dd0a1353f2 100644
--- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c
+++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c
@@ -1546,9 +1546,6 @@ void qlcnic_sriov_vf_set_multi(struct net_device *netdev)
 {
 	struct qlcnic_adapter *adapter = netdev_priv(netdev);
 	struct qlcnic_hardware_context *ahw = adapter->ahw;
-	static const u8 bcast_addr[ETH_ALEN] = {
-		0xff, 0xff, 0xff, 0xff, 0xff, 0xff
-	};
 	struct netdev_hw_addr *ha;
 	u32 mode = VPORT_MISS_MODE_DROP;
 
@@ -1562,7 +1559,8 @@ void qlcnic_sriov_vf_set_multi(struct net_device *netdev)
 		   (netdev_mc_count(netdev) > ahw->max_mc_count)) {
 		mode = VPORT_MISS_MODE_ACCEPT_MULTI;
 	} else {
-		qlcnic_vf_add_mc_list(netdev, bcast_addr, QLCNIC_BROADCAST_MAC);
+		qlcnic_vf_add_mc_list(netdev, ether_broadcast_addr,
+				      QLCNIC_BROADCAST_MAC);
 		if (!netdev_mc_empty(netdev)) {
 			qlcnic_flush_mcast_mac(adapter);
 			netdev_for_each_mc_addr(ha, netdev)
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* [PATCH 12/12] ethernet: Use ether_zero_addr instead of local statics
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (10 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 11/12] qlogic: Convert local bcast_addr to global ether_broadcast_addr Joe Perches
@ 2018-03-31  7:05 ` Joe Perches
  2018-04-05 13:27 ` [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Felix Fietkau
  12 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31  7:05 UTC (permalink / raw)
  To: Michael Chan, Claudiu Manoil; +Cc: netdev, linux-kernel

This saves a small amount of object code.

Miscellanea:

o __b44_cam_write now use const u8 *data instead of unsigned char *
  to avoid compiler warnings as it doesn't modify data

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/ethernet/broadcom/b44.c      | 5 ++---
 drivers/net/ethernet/freescale/gianfar.c | 3 +--
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/b44.c b/drivers/net/ethernet/broadcom/b44.c
index e445ab724827..30879ff7de19 100644
--- a/drivers/net/ethernet/broadcom/b44.c
+++ b/drivers/net/ethernet/broadcom/b44.c
@@ -220,7 +220,7 @@ static inline void __b44_cam_read(struct b44 *bp, unsigned char *data, int index
 	data[1] = (val >> 0) & 0xFF;
 }
 
-static inline void __b44_cam_write(struct b44 *bp, unsigned char *data, int index)
+static inline void __b44_cam_write(struct b44 *bp, const u8 *data, int index)
 {
 	u32 val;
 
@@ -1744,7 +1744,6 @@ static void __b44_set_rx_mode(struct net_device *dev)
 		val |= RXCONFIG_PROMISC;
 		bw32(bp, B44_RXCONFIG, val);
 	} else {
-		unsigned char zero[6] = {0, 0, 0, 0, 0, 0};
 		int i = 1;
 
 		__b44_set_mac_addr(bp);
@@ -1756,7 +1755,7 @@ static void __b44_set_rx_mode(struct net_device *dev)
 			i = __b44_load_mcast(bp, dev);
 
 		for (; i < 64; i++)
-			__b44_cam_write(bp, zero, i);
+			__b44_cam_write(bp, ether_zero_addr, i);
 
 		bw32(bp, B44_RXCONFIG, val);
         	val = br32(bp, B44_CAM_CTRL);
diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
index f27f9bae1a4a..24d8c85f8f4e 100644
--- a/drivers/net/ethernet/freescale/gianfar.c
+++ b/drivers/net/ethernet/freescale/gianfar.c
@@ -3501,10 +3501,9 @@ static void gfar_set_multi(struct net_device *dev)
 static void gfar_clear_exact_match(struct net_device *dev)
 {
 	int idx;
-	static const u8 zero_arr[ETH_ALEN] = {0, 0, 0, 0, 0, 0};
 
 	for (idx = 1; idx < GFAR_EM_NUM + 1; idx++)
-		gfar_set_mac_for_addr(dev, idx, zero_arr);
+		gfar_set_mac_for_addr(dev, idx, ether_zero_addr);
 }
 
 /* Set the appropriate hash bit for the given addr */
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* Re: [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address
  2018-03-31  7:05 ` [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address Joe Perches
@ 2018-03-31 14:01   ` Pkshih
  2018-03-31 14:33     ` Joe Perches
  2018-04-05 12:39   ` Kalle Valo
  1 sibling, 1 reply; 30+ messages in thread
From: Pkshih @ 2018-03-31 14:01 UTC (permalink / raw)
  To: huxm, gbhat, jussi.kivilinna, nishants, kvalo, joe, amitkarwar, chunkeey
  Cc: linux-wireless, netdev, linux-kernel, b43-dev

On Sat, 2018-03-31 at 00:05 -0700, Joe Perches wrote:
> Use the new ether_broadcast_addr global instead to save some object code.
> 
> Signed-off-by: Joe Perches <joe@perches.com>
> ---
>  drivers/net/wireless/admtek/adm8211.c           | 3 +--
>  drivers/net/wireless/ath/carl9170/mac.c         | 4 +---
>  drivers/net/wireless/broadcom/b43/main.c        | 3 +--
>  drivers/net/wireless/marvell/mwifiex/cfg80211.c | 3 +--
>  drivers/net/wireless/realtek/rtlwifi/core.c     | 5 ++---
>  drivers/net/wireless/rndis_wlan.c               | 6 +-----
>  drivers/net/wireless/ti/wl1251/main.c           | 5 +----
>  drivers/net/wireless/ti/wlcore/main.c           | 5 +----
>  8 files changed, 9 insertions(+), 25 deletions(-)
> 
>  
> diff --git a/drivers/net/wireless/realtek/rtlwifi/core.c
> b/drivers/net/wireless/realtek/rtlwifi/core.c
> index cfea57efa7f4..8c534a93dad5 100644
> --- a/drivers/net/wireless/realtek/rtlwifi/core.c
> +++ b/drivers/net/wireless/realtek/rtlwifi/core.c
> @@ -1527,7 +1527,6 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
>  	bool wep_only = false;
>  	int err = 0;
>  	u8 mac_addr[ETH_ALEN];
> -	u8 bcast_addr[ETH_ALEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
>  
>  	rtlpriv->btcoexist.btc_info.in_4way = false;
>  
> @@ -1544,7 +1543,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
>  	RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,
>  		 "%s hardware based encryption for keyidx: %d, mac: %pM\n",
>  		  cmd == SET_KEY ? "Using" : "Disabling", key->keyidx,
> -		  sta ? sta->addr : bcast_addr);
> +		  sta ? sta->addr : ether_broadcast_addr);
>  	rtlpriv->sec.being_setkey = true;
>  	rtl_ips_nic_on(hw);
>  	mutex_lock(&rtlpriv->locks.conf_mutex);
> @@ -1649,7 +1648,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
>  			memcpy(rtlpriv->sec.key_buf[key_idx],
>  			       key->key, key->keylen);
>  			rtlpriv->sec.key_len[key_idx] = key->keylen;
> -			memcpy(mac_addr, bcast_addr, ETH_ALEN);
> +			memcpy(mac_addr, ether_broadcast_addr, ETH_ALEN);

Use ether_addr_copy(mac_addr, ether_broadcast_addr) ?


>  		} else {	/* pairwise key */
>  			RT_TRACE(rtlpriv, COMP_SEC, DBG_DMESG,
>  				 "set pairwise key\n");

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address
  2018-03-31 14:01   ` Pkshih
@ 2018-03-31 14:33     ` Joe Perches
  0 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31 14:33 UTC (permalink / raw)
  To: Pkshih, huxm, gbhat, jussi.kivilinna, nishants, kvalo,
	amitkarwar, chunkeey
  Cc: linux-wireless, netdev, linux-kernel, b43-dev

On Sat, 2018-03-31 at 14:01 +0000, Pkshih wrote:
> On Sat, 2018-03-31 at 00:05 -0700, Joe Perches wrote:
> > Use the new ether_broadcast_addr global instead to save some object code.
[]
> > diff --git a/drivers/net/wireless/realtek/rtlwifi/core.c
[]
> > @@ -1649,7 +1648,7 @@ static int rtl_op_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd,
> >  			memcpy(rtlpriv->sec.key_buf[key_idx],
> >  			       key->key, key->keylen);
> >  			rtlpriv->sec.key_len[key_idx] = key->keylen;
> > -			memcpy(mac_addr, bcast_addr, ETH_ALEN);
> > +			memcpy(mac_addr, ether_broadcast_addr, ETH_ALEN);
> 
> Use ether_addr_copy(mac_addr, ether_broadcast_addr) ?

This should use eth_broadcast_addr(mac_addr) instead.

There are similar conversion still possible in the tree.
One day.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr
  2018-03-31  7:05 ` [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr Joe Perches
@ 2018-03-31 17:36   ` Andrew Lunn
  2018-03-31 18:01     ` Joe Perches
  2018-03-31 18:34     ` [PATCH V2] " Joe Perches
  2018-04-01  0:18   ` [PATCH 02/12] " kbuild test robot
  1 sibling, 2 replies; 30+ messages in thread
From: Andrew Lunn @ 2018-03-31 17:36 UTC (permalink / raw)
  To: Joe Perches
  Cc: Vivien Didelot, Florian Fainelli, Stephen Hemminger,
	David S. Miller, netdev, linux-kernel, bridge

On Sat, Mar 31, 2018 at 12:05:17AM -0700, Joe Perches wrote:
> --- a/net/bridge/br_device.c
> +++ b/net/bridge/br_device.c
> @@ -1,4 +1,4 @@
> -/*
> +gg/*

Hi Joe

This does not look good.

     Andrew

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr
  2018-03-31 17:36   ` Andrew Lunn
@ 2018-03-31 18:01     ` Joe Perches
  2018-03-31 18:34     ` [PATCH V2] " Joe Perches
  1 sibling, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31 18:01 UTC (permalink / raw)
  To: Andrew Lunn
  Cc: Vivien Didelot, Florian Fainelli, Stephen Hemminger,
	David S. Miller, netdev, linux-kernel, bridge

On Sat, 2018-03-31 at 19:36 +0200, Andrew Lunn wrote:
> On Sat, Mar 31, 2018 at 12:05:17AM -0700, Joe Perches wrote:
> > --- a/net/bridge/br_device.c
> > +++ b/net/bridge/br_device.c
> > @@ -1,4 +1,4 @@
> > -/*
> > +gg/*
> 
> Hi Joe
> 
> This does not look good.

Definitely agree with that.  apologies for not noticing.

It's emacs editing nonsense like a superfluous :wq for vim

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 04/12] bridge: netfilter: Use the new global ether_<foo>_addr arrays
  2018-03-31  7:05 ` [PATCH 04/12] bridge: netfilter: Use the new global ether_<foo>_addr arrays Joe Perches
@ 2018-03-31 18:28   ` Pablo Neira Ayuso
  2018-03-31 18:40     ` Joe Perches
  0 siblings, 1 reply; 30+ messages in thread
From: Pablo Neira Ayuso @ 2018-03-31 18:28 UTC (permalink / raw)
  To: Joe Perches
  Cc: Jozsef Kadlecsik, Florian Westphal, Stephen Hemminger,
	David S. Miller, netfilter-devel, coreteam, bridge, netdev,
	linux-kernel

Hi Joe,

On Sat, Mar 31, 2018 at 12:05:19AM -0700, Joe Perches wrote:
> Remove the local consts and use the new globals.

This one is already upstream:

https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=9124a20d8794663a396b5d6f91f66903848a042b

I can see you're using is_broadcast_ether_addr(e->destmsk) in this new
version, we would need an incremental version.

Thanks.

> Signed-off-by: Joe Perches <joe@perches.com>
> ---
>  net/bridge/netfilter/ebt_stp.c | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/net/bridge/netfilter/ebt_stp.c b/net/bridge/netfilter/ebt_stp.c
> index 3140eb912d7e..2b7479cc0140 100644
> --- a/net/bridge/netfilter/ebt_stp.c
> +++ b/net/bridge/netfilter/ebt_stp.c
> @@ -153,8 +153,6 @@ ebt_stp_mt(const struct sk_buff *skb, struct xt_action_param *par)
>  static int ebt_stp_mt_check(const struct xt_mtchk_param *par)
>  {
>  	const struct ebt_stp_info *info = par->matchinfo;
> -	const u8 bridge_ula[6] = {0x01, 0x80, 0xc2, 0x00, 0x00, 0x00};
> -	const u8 msk[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
>  	const struct ebt_entry *e = par->entryinfo;
>  
>  	if (info->bitmask & ~EBT_STP_MASK || info->invflags & ~EBT_STP_MASK ||
> @@ -162,8 +160,8 @@ static int ebt_stp_mt_check(const struct xt_mtchk_param *par)
>  		return -EINVAL;
>  	/* Make sure the match only receives stp frames */
>  	if (!par->nft_compat &&
> -	    (!ether_addr_equal(e->destmac, bridge_ula) ||
> -	     !ether_addr_equal(e->destmsk, msk) ||
> +	    (!ether_addr_equal(e->destmac, ether_stp_addr) ||
> +	     !ether_addr_equal(e->destmsk, ether_broadcast_addr) ||
>  	     !(e->bitmask & EBT_DESTMAC)))
>  		return -EINVAL;
>  
> -- 
> 2.15.0
> 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH V2] treewide/net: Rename eth_stp_addr to ether_stp_addr
  2018-03-31 17:36   ` Andrew Lunn
  2018-03-31 18:01     ` Joe Perches
@ 2018-03-31 18:34     ` Joe Perches
  2018-04-01 18:07       ` David Miller
  1 sibling, 1 reply; 30+ messages in thread
From: Joe Perches @ 2018-03-31 18:34 UTC (permalink / raw)
  To: Andrew Lunn, Vivien Didelot, Florian Fainelli, Stephen Hemminger
  Cc: David S. Miller, netdev, linux-kernel, bridge

eth_stp_addr is not in the same form as the other global ether_<foo>_addr
addresses like ether_broadcast_addr.

Convert it treewide.

Miscellanea:

o Add comment to the ether_stp_addr define to show it's for spanning-tree

Signed-off-by: Joe Perches <joe@perches.com>
---

V2: Remove gg from initial comment (bad editing)

 drivers/net/dsa/lan9303-core.c | 4 ++--
 include/linux/etherdevice.h    | 3 ++-
 net/bridge/br_device.c         | 2 +-
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c
index fefa454f3e56..a6f015ef251a 100644
--- a/drivers/net/dsa/lan9303-core.c
+++ b/drivers/net/dsa/lan9303-core.c
@@ -789,7 +789,7 @@ static int lan9303_separate_ports(struct lan9303 *chip)
 {
 	int ret;
 
-	lan9303_alr_del_port(chip, eth_stp_addr, 0);
+	lan9303_alr_del_port(chip, ether_stp_addr, 0);
 	ret = lan9303_write_switch_reg(chip, LAN9303_SWE_PORT_MIRROR,
 				LAN9303_SWE_PORT_MIRROR_SNIFFER_PORT0 |
 				LAN9303_SWE_PORT_MIRROR_MIRRORED_PORT1 |
@@ -814,7 +814,7 @@ static void lan9303_bridge_ports(struct lan9303 *chip)
 
 	lan9303_write_switch_reg(chip, LAN9303_SWE_PORT_STATE,
 				 chip->swe_port_state);
-	lan9303_alr_add_port(chip, eth_stp_addr, 0, true);
+	lan9303_alr_add_port(chip, ether_stp_addr, 0, true);
 }
 
 static void lan9303_handle_reset(struct lan9303 *chip)
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
index 85d2486b2959..142da8043b24 100644
--- a/include/linux/etherdevice.h
+++ b/include/linux/etherdevice.h
@@ -70,7 +70,8 @@ extern const u8 ether_zero_addr[ETH_ALEN];	/* all zeros */
 /* Reserved Ethernet Addresses per IEEE 802.1Q */
 extern const u8 ether_reserved_addr_base[ETH_ALEN];
 
-#define eth_stp_addr ether_reserved_addr_base
+/* Ethernet bridge - spanning tree protocol */
+#define ether_stp_addr ether_reserved_addr_base
 
 /**
  * is_link_local_ether_addr - Determine if given Ethernet address is link-local
diff --git a/net/bridge/br_device.c b/net/bridge/br_device.c
index 278fc999d355..17b1917b6ecd 100644
--- a/net/bridge/br_device.c
+++ b/net/bridge/br_device.c
@@ -431,7 +431,7 @@ void br_dev_setup(struct net_device *dev)
 	br->bridge_id.prio[0] = 0x80;
 	br->bridge_id.prio[1] = 0x00;
 
-	ether_addr_copy(br->group_addr, eth_stp_addr);
+	ether_addr_copy(br->group_addr, ether_stp_addr);
 
 	br->stp_enabled = BR_NO_STP;
 	br->group_fwd_mask = BR_GROUPFWD_DEFAULT;
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 30+ messages in thread

* Re: [PATCH 04/12] bridge: netfilter: Use the new global ether_<foo>_addr arrays
  2018-03-31 18:28   ` Pablo Neira Ayuso
@ 2018-03-31 18:40     ` Joe Perches
  0 siblings, 0 replies; 30+ messages in thread
From: Joe Perches @ 2018-03-31 18:40 UTC (permalink / raw)
  To: Pablo Neira Ayuso
  Cc: Jozsef Kadlecsik, Florian Westphal, Stephen Hemminger,
	David S. Miller, netfilter-devel, coreteam, bridge, netdev,
	linux-kernel

On Sat, 2018-03-31 at 20:28 +0200, Pablo Neira Ayuso wrote:
> Hi Joe,

Hi Pablo.

> On Sat, Mar 31, 2018 at 12:05:19AM -0700, Joe Perches wrote:
> > Remove the local consts and use the new globals.
> 
> This one is already upstream:
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git/commit/?id=9124a20d8794663a396b5d6f91f66903848a042b
> 
> I can see you're using is_broadcast_ether_addr(e->destmsk) in this new
> version, we would need an incremental version.

No worries.  I did it against next-20180329
and that other commit wasn't there.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr
  2018-03-31  7:05 ` [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr Joe Perches
  2018-03-31 17:36   ` Andrew Lunn
@ 2018-04-01  0:18   ` kbuild test robot
  1 sibling, 0 replies; 30+ messages in thread
From: kbuild test robot @ 2018-04-01  0:18 UTC (permalink / raw)
  To: Joe Perches
  Cc: kbuild-all, Andrew Lunn, Vivien Didelot, Florian Fainelli,
	Stephen Hemminger, David S. Miller, netdev, linux-kernel, bridge

[-- Attachment #1: Type: text/plain, Size: 1434 bytes --]

Hi Joe,

I love your patch! Yet something to improve:

[auto build test ERROR on wireless-drivers-next/master]
[also build test ERROR on v4.16-rc7 next-20180329]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Joe-Perches/Ethernet-Add-and-use-ether_-type-_addr-globals/20180401-072030
base:   https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git master
config: i386-randconfig-x009-201813 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   In file included from include/linux/kernel.h:6:0,
                    from net//bridge/br_device.c:14:
>> /usr/lib/gcc/x86_64-linux-gnu/7/include/stdarg.h:40:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'typedef'
    typedef __builtin_va_list __gnuc_va_list;
    ^~~~~~~
   In file included from include/linux/kernel.h:6:0,
                    from net//bridge/br_device.c:14:
>> /usr/lib/gcc/x86_64-linux-gnu/7/include/stdarg.h:99:9: error: unknown type name '__gnuc_va_list'
    typedef __gnuc_va_list va_list;
            ^~~~~~~~~~~~~~

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 30019 bytes --]

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH V2] treewide/net: Rename eth_stp_addr to ether_stp_addr
  2018-03-31 18:34     ` [PATCH V2] " Joe Perches
@ 2018-04-01 18:07       ` David Miller
  0 siblings, 0 replies; 30+ messages in thread
From: David Miller @ 2018-04-01 18:07 UTC (permalink / raw)
  To: joe
  Cc: andrew, vivien.didelot, f.fainelli, stephen, netdev,
	linux-kernel, bridge

From: Joe Perches <joe@perches.com>
Date: Sat, 31 Mar 2018 11:34:06 -0700

> eth_stp_addr is not in the same form as the other global ether_<foo>_addr
> addresses like ether_broadcast_addr.
> 
> Convert it treewide.
> 
> Miscellanea:
> 
> o Add comment to the ether_stp_addr define to show it's for spanning-tree
> 
> Signed-off-by: Joe Perches <joe@perches.com>
> ---
> 
> V2: Remove gg from initial comment (bad editing)

Joe this was part of a larger series.

Please repost the entire series when you fix a patch contained
in that series, not just the patch that is changing.

Thank you.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address
  2018-03-31  7:05 ` [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address Joe Perches
  2018-03-31 14:01   ` Pkshih
@ 2018-04-05 12:39   ` Kalle Valo
  2018-04-05 12:48     ` Kalle Valo
  1 sibling, 1 reply; 30+ messages in thread
From: Kalle Valo @ 2018-04-05 12:39 UTC (permalink / raw)
  To: Joe Perches
  Cc: Christian Lamparter, Amitkumar Karwar, Nishant Sarmukadam,
	Ganapathi Bhat, Xinming Hu, Ping-Ke Shih, Jussi Kivilinna,
	linux-wireless, netdev, linux-kernel, b43-dev

Joe Perches <joe@perches.com> writes:

> Use the new ether_broadcast_addr global instead to save some object code.
>
> Signed-off-by: Joe Perches <joe@perches.com>
> ---
>  drivers/net/wireless/admtek/adm8211.c           | 3 +--
>  drivers/net/wireless/ath/carl9170/mac.c         | 4 +---
>  drivers/net/wireless/broadcom/b43/main.c        | 3 +--
>  drivers/net/wireless/marvell/mwifiex/cfg80211.c | 3 +--
>  drivers/net/wireless/realtek/rtlwifi/core.c     | 5 ++---
>  drivers/net/wireless/rndis_wlan.c               | 6 +-----
>  drivers/net/wireless/ti/wl1251/main.c           | 5 +----
>  drivers/net/wireless/ti/wlcore/main.c           | 5 +----
>  8 files changed, 9 insertions(+), 25 deletions(-)

It would be really helpful if you could CLEARLY document in the patches
(or in the cover letter but then you need to cc all parties) to what
tree the patches are meant for. Otherwise I, and other maintainers as
well, need to waste time trying to guess what's your plan.

I will now drop the four wireless patches from my queue. So if you want
to me to take them please resubmit.

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address
  2018-04-05 12:39   ` Kalle Valo
@ 2018-04-05 12:48     ` Kalle Valo
  0 siblings, 0 replies; 30+ messages in thread
From: Kalle Valo @ 2018-04-05 12:48 UTC (permalink / raw)
  To: Joe Perches
  Cc: Christian Lamparter, Amitkumar Karwar, Nishant Sarmukadam,
	Ganapathi Bhat, Xinming Hu, Ping-Ke Shih, Jussi Kivilinna,
	linux-wireless, netdev, linux-kernel, b43-dev

Kalle Valo <kvalo@codeaurora.org> writes:

> Joe Perches <joe@perches.com> writes:
>
>> Use the new ether_broadcast_addr global instead to save some object code.
>>
>> Signed-off-by: Joe Perches <joe@perches.com>
>> ---
>>  drivers/net/wireless/admtek/adm8211.c           | 3 +--
>>  drivers/net/wireless/ath/carl9170/mac.c         | 4 +---
>>  drivers/net/wireless/broadcom/b43/main.c        | 3 +--
>>  drivers/net/wireless/marvell/mwifiex/cfg80211.c | 3 +--
>>  drivers/net/wireless/realtek/rtlwifi/core.c     | 5 ++---
>>  drivers/net/wireless/rndis_wlan.c               | 6 +-----
>>  drivers/net/wireless/ti/wl1251/main.c           | 5 +----
>>  drivers/net/wireless/ti/wlcore/main.c           | 5 +----
>>  8 files changed, 9 insertions(+), 25 deletions(-)
>
> It would be really helpful if you could CLEARLY document in the patches
> (or in the cover letter but then you need to cc all parties) to what
> tree the patches are meant for. Otherwise I, and other maintainers as
> well, need to waste time trying to guess what's your plan.

Forgot to mention that for me the best approach is to have the tree name
in subject, just like Dave and Linus both recommend:

[PATCH 06/12 wireless-drivers-next] wireless: Convert simple uses of a static const Ethernet broadcast address

This way I can immeaditely see from patchwork to which tree the patch
should go which helps tremendously. And if the tree name is too long you
can always shorten it to w-d and w-d-next.

-- 
Kalle Valo

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals
  2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
                   ` (11 preceding siblings ...)
  2018-03-31  7:05 ` [PATCH 12/12] ethernet: Use ether_zero_addr instead of local statics Joe Perches
@ 2018-04-05 13:27 ` Felix Fietkau
  2018-04-05 13:51   ` Joe Perches
  12 siblings, 1 reply; 30+ messages in thread
From: Felix Fietkau @ 2018-04-05 13:27 UTC (permalink / raw)
  To: Joe Perches, netdev, linux-wireless, b43-dev, bridge,
	netfilter-devel, coreteam
  Cc: linux-kernel, brcm80211-dev-list.pdl, brcm80211-dev-list

On 2018-03-31 09:05, Joe Perches wrote:
> There are many local static and non-static arrays that are used for
> Ethernet broadcast address output or comparison.
> 
> Centralize the array into a single separate file and remove the local
> arrays.
I suspect that for many targets and configurations, the local arrays
might actually be smaller than exporting a global. You have to factor in
not just the .text size, but the fact that referencing an exported
symbol needs a .reloc entry as well, which also eats up some space (at
least when the code is being built as module).

In my opinion, your series probably causes more bloat in common
configurations instead of reducing it.

You're also touching several places that could easily use
eth_broadcast_addr and eth_zero_addr. I think making those changes would
be more productive than what you did in this series.

- Felix

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals
  2018-04-05 13:27 ` [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Felix Fietkau
@ 2018-04-05 13:51   ` Joe Perches
  2018-04-05 14:05     ` Felix Fietkau
  0 siblings, 1 reply; 30+ messages in thread
From: Joe Perches @ 2018-04-05 13:51 UTC (permalink / raw)
  To: Felix Fietkau, netdev, linux-wireless, b43-dev, bridge,
	netfilter-devel, coreteam
  Cc: linux-kernel, brcm80211-dev-list.pdl, brcm80211-dev-list

On Thu, 2018-04-05 at 15:27 +0200, Felix Fietkau wrote:
> On 2018-03-31 09:05, Joe Perches wrote:
> > There are many local static and non-static arrays that are used for
> > Ethernet broadcast address output or comparison.
> > 
> > Centralize the array into a single separate file and remove the local
> > arrays.
> 
> I suspect that for many targets and configurations, the local arrays
> might actually be smaller than exporting a global.

I tried x86-64 allnoconfig and defconfig.
Those both did not increase vmlinux size.

The defconfig actually got smaller, but that might have been
some object alignment oddity.

>  You have to factor in
> not just the .text size, but the fact that referencing an exported
> symbol needs a .reloc entry as well, which also eats up some space (at
> least when the code is being built as module).

Thanks, the modules I built got smaller.

> In my opinion, your series probably causes more bloat in common
> configurations instead of reducing it.
> 
> You're also touching several places that could easily use
> eth_broadcast_addr and eth_zero_addr. I think making those changes would
> be more productive than what you did in this series.

Doubtful. AFAIK: possible unaligned addresses.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals
  2018-04-05 13:51   ` Joe Perches
@ 2018-04-05 14:05     ` Felix Fietkau
  0 siblings, 0 replies; 30+ messages in thread
From: Felix Fietkau @ 2018-04-05 14:05 UTC (permalink / raw)
  To: Joe Perches, netdev, linux-wireless, b43-dev, bridge,
	netfilter-devel, coreteam
  Cc: linux-kernel, brcm80211-dev-list.pdl, brcm80211-dev-list

On 2018-04-05 15:51, Joe Perches wrote:
>>  You have to factor in
>> not just the .text size, but the fact that referencing an exported
>> symbol needs a .reloc entry as well, which also eats up some space (at
>> least when the code is being built as module).
> 
> Thanks, the modules I built got smaller.
Please post some numbers to show this. By the way, on other
architectures the numbers will probably be different, especially on
ARM/MIPS.
>> In my opinion, your series probably causes more bloat in common
>> configurations instead of reducing it.
>> 
>> You're also touching several places that could easily use
>> eth_broadcast_addr and eth_zero_addr. I think making those changes would
>> be more productive than what you did in this series.
> 
> Doubtful. AFAIK: possible unaligned addresses.
Those two are just memset calls, alignment does not matter.

- Felix

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 07/12] brcmfmac: Convert ALLFFMAC to ether_broadcast_addr
  2018-03-31  7:05 ` [PATCH 07/12] brcmfmac: Convert ALLFFMAC to ether_broadcast_addr Joe Perches
@ 2018-04-05 19:00   ` Arend van Spriel
  0 siblings, 0 replies; 30+ messages in thread
From: Arend van Spriel @ 2018-04-05 19:00 UTC (permalink / raw)
  To: Joe Perches, linux-kernel
  Cc: Franky Lin, Hante Meuleman, Chi-Hsien Lin, Wright Feng,
	Kalle Valo, linux-wireless, brcm80211-dev-list.pdl,
	brcm80211-dev-list, netdev

On 3/31/2018 9:05 AM, Joe Perches wrote:
> Remove the local ALLFFMAC extern array and use the new global instead.

I stumbled upon this one couple of weeks ago. I moved the definition to 
flowring.c although I considered for a moment to pick up the task you 
took here valiantly.

> Miscellanea:
>
> o Convert char *mac to const char *mac as it can't be modified

The real reason is off course that your new global is const and thus mac 
variable need to be const as well to avoid compiler warning.

I have to agree with Kalle regarding the upstream logistics, but for 
what it is worth...

Acked-by: Arend van Spriel <arend.vanspriel@broadcom.com>
> Signed-off-by: Joe Perches <joe@perches.com>
> ---
>   drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c   | 2 --
>   drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.h   | 2 --
>   drivers/net/wireless/broadcom/brcm80211/brcmfmac/flowring.c | 8 ++++----
>   3 files changed, 4 insertions(+), 8 deletions(-)

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 09/12] iwlwifi: Remove local iwl_bcast_addr and use ether_broadcast_addr
  2018-03-31  7:05 ` [PATCH 09/12] iwlwifi: Remove local iwl_bcast_addr " Joe Perches
@ 2018-07-07  7:40   ` Luciano Coelho
  2018-09-07 10:46     ` Luciano Coelho
  0 siblings, 1 reply; 30+ messages in thread
From: Luciano Coelho @ 2018-07-07  7:40 UTC (permalink / raw)
  To: Joe Perches, linux-kernel
  Cc: Johannes Berg, Emmanuel Grumbach, Intel Linux Wireless,
	Kalle Valo, linux-wireless, netdev

On Sat, 2018-03-31 at 00:05 -0700, Joe Perches wrote:
> Use the new global to save a little bit of object code.
> 
> Signed-off-by: Joe Perches <joe@perches.com>
> ---

I took this one to our internal tree and it will be applied as part of
our normal upstreaming process.

Thanks!

--
Luca.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 09/12] iwlwifi: Remove local iwl_bcast_addr and use ether_broadcast_addr
  2018-07-07  7:40   ` Luciano Coelho
@ 2018-09-07 10:46     ` Luciano Coelho
  0 siblings, 0 replies; 30+ messages in thread
From: Luciano Coelho @ 2018-09-07 10:46 UTC (permalink / raw)
  To: Joe Perches, linux-kernel
  Cc: Johannes Berg, Emmanuel Grumbach, Intel Linux Wireless,
	Kalle Valo, linux-wireless, netdev

On Sat, 2018-07-07 at 10:40 +0300, Luciano Coelho wrote:
> On Sat, 2018-03-31 at 00:05 -0700, Joe Perches wrote:
> > Use the new global to save a little bit of object code.
> > 
> > Signed-off-by: Joe Perches <joe@perches.com>
> > ---
> 
> I took this one to our internal tree and it will be applied as part
> of our normal upstreaming process.

It seems that the patch to etherdevice.h never got applied upstream, so
I'm actually dropping this patch.

Please resend if it becomes relevant again.

--
Cheers,
Luca.


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2018-09-07 10:46 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-31  7:05 [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Joe Perches
2018-03-31  7:05 ` [PATCH 01/12] ethernet: Add generic ether_<foo>_addr addresses Joe Perches
2018-03-31  7:05 ` [PATCH 02/12] treewide/net: Rename eth_stp_addr to ether_stp_addr Joe Perches
2018-03-31 17:36   ` Andrew Lunn
2018-03-31 18:01     ` Joe Perches
2018-03-31 18:34     ` [PATCH V2] " Joe Perches
2018-04-01 18:07       ` David Miller
2018-04-01  0:18   ` [PATCH 02/12] " kbuild test robot
2018-03-31  7:05 ` [PATCH 03/12] net: mac80211: Use global ether_broadcast_addr Joe Perches
2018-03-31  7:05 ` [PATCH 04/12] bridge: netfilter: Use the new global ether_<foo>_addr arrays Joe Perches
2018-03-31 18:28   ` Pablo Neira Ayuso
2018-03-31 18:40     ` Joe Perches
2018-03-31  7:05 ` [PATCH 05/12] net: atm: Use ether_broadcast_addr Joe Perches
2018-03-31  7:05 ` [PATCH 06/12] wireless: Convert simple uses of a static const Ethernet broadcast address Joe Perches
2018-03-31 14:01   ` Pkshih
2018-03-31 14:33     ` Joe Perches
2018-04-05 12:39   ` Kalle Valo
2018-04-05 12:48     ` Kalle Valo
2018-03-31  7:05 ` [PATCH 07/12] brcmfmac: Convert ALLFFMAC to ether_broadcast_addr Joe Perches
2018-04-05 19:00   ` Arend van Spriel
2018-03-31  7:05 ` [PATCH 08/12] iwlegacy: Remove EXPORT_SYMBOL(il_bcast_addr) and use ether_broadcast_addr Joe Perches
2018-03-31  7:05 ` [PATCH 09/12] iwlwifi: Remove local iwl_bcast_addr " Joe Perches
2018-07-07  7:40   ` Luciano Coelho
2018-09-07 10:46     ` Luciano Coelho
2018-03-31  7:05 ` [PATCH 10/12] mvpp2: Use ether_broadcast_addr instead of a local array Joe Perches
2018-03-31  7:05 ` [PATCH 11/12] qlogic: Convert local bcast_addr to global ether_broadcast_addr Joe Perches
2018-03-31  7:05 ` [PATCH 12/12] ethernet: Use ether_zero_addr instead of local statics Joe Perches
2018-04-05 13:27 ` [PATCH 00/12] Ethernet: Add and use ether_<type>_addr globals Felix Fietkau
2018-04-05 13:51   ` Joe Perches
2018-04-05 14:05     ` Felix Fietkau

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).