* [PATCH v2 00/10] Part 4: handle addr_assign_type for random addresses
@ 2012-02-17 15:43 Danny Kukawka
2012-02-17 15:43 ` [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used Danny Kukawka
0 siblings, 1 reply; 5+ messages in thread
From: Danny Kukawka @ 2012-02-17 15:43 UTC (permalink / raw)
To: David S. Miller
Cc: Danny Kukawka, Jeff Kirsher, Jiri Pirko, Richard Cochran,
Jiri Kosina, linux-kernel, netdev, e1000-devel, b.a.t.m.a.n,
user-mode-linux-devel
The fourth part of my patch series to fix the handling of
addr_assign_type for random MAC addresses.
This most of the patches in this series are for slightly
more complex cases to handle addr_assign_type and the
reset to NET_ADDR_PERM as soon as the MAC get changed via
.ndo_set_mac_address where eth_mac_addr wasn't used.
Danny Kukawka (10):
au1000_eth: use eth_hw_addr_random() instead of random_ether_addr()
lantiq_etop: set addr_assign_type if random_ether_addr() used
davinci_emac: use eth_hw_addr_random() instead of random_ether_addr()
xilinx ll_temac: use eth_hw_addr_random() instead of
random_ether_addr()
igbvf: reset netdevice addr_assign_type if changed
batman-adv: use eth_hw_addr_random() instead of random_ether_addr()
cisco/enic: use eth_hw_addr_random() instead of random_ether_addr()
ethoc: set addr_assign_type if random_ether_addr() used
atheros eth: set addr_assign_type if random_ether_addr() used
UML net: set addr_assign_type if random_ether_addr() used
arch/um/drivers/net_kern.c | 11 ++++++++---
drivers/net/ethernet/amd/au1000_eth.c | 9 +++++----
drivers/net/ethernet/atheros/atl1c/atl1c_hw.c | 2 +-
drivers/net/ethernet/atheros/atl1c/atl1c_main.c | 9 ++++-----
drivers/net/ethernet/atheros/atlx/atl1.c | 12 +++++++++---
drivers/net/ethernet/atheros/atlx/atlx.c | 1 +
drivers/net/ethernet/cisco/enic/enic_main.c | 14 ++++++++++++--
drivers/net/ethernet/ethoc.c | 20 ++++++++++++++++++--
drivers/net/ethernet/intel/igbvf/netdev.c | 1 +
drivers/net/ethernet/lantiq_etop.c | 7 +++++++
drivers/net/ethernet/ti/davinci_emac.c | 5 +++--
drivers/net/ethernet/xilinx/ll_temac_main.c | 4 +++-
net/batman-adv/soft-interface.c | 5 ++---
13 files changed, 74 insertions(+), 26 deletions(-)
--
1.7.8.3
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used 2012-02-17 15:43 [PATCH v2 00/10] Part 4: handle addr_assign_type for random addresses Danny Kukawka @ 2012-02-17 15:43 ` Danny Kukawka 2012-02-17 15:55 ` Richard Weinberger 2012-02-17 21:05 ` David Miller 0 siblings, 2 replies; 5+ messages in thread From: Danny Kukawka @ 2012-02-17 15:43 UTC (permalink / raw) To: Jeff Dike Cc: Danny Kukawka, Richard Weinberger, Andrew Morton, David S. Miller, Jiri Pirko, user-mode-linux-devel, linux-kernel Set addr_assign_type correctly to NET_ADDR_RANDOM in case a random MAC address was generated and assigned to the netdevice. Return state from setup_etheraddr() about returning a random MAC address or not and check this state in eth_configure(). Signed-off-by: Danny Kukawka <danny.kukawka@bisect.de> --- arch/um/drivers/net_kern.c | 11 ++++++++--- 1 files changed, 8 insertions(+), 3 deletions(-) diff --git a/arch/um/drivers/net_kern.c b/arch/um/drivers/net_kern.c index a492e59..d299618 100644 --- a/arch/um/drivers/net_kern.c +++ b/arch/um/drivers/net_kern.c @@ -293,7 +293,7 @@ static void uml_net_user_timer_expire(unsigned long _conn) #endif } -static void setup_etheraddr(char *str, unsigned char *addr, char *name) +static int setup_etheraddr(char *str, unsigned char *addr, char *name) { char *end; int i; @@ -334,12 +334,13 @@ static void setup_etheraddr(char *str, unsigned char *addr, char *name) addr[0] | 0x02, addr[1], addr[2], addr[3], addr[4], addr[5]); } - return; + return 0; random: printk(KERN_INFO "Choosing a random ethernet address for device %s\n", name); random_ether_addr(addr); + return 1; } static DEFINE_SPINLOCK(devices_lock); @@ -391,6 +392,7 @@ static void eth_configure(int n, void *init, char *mac, struct net_device *dev; struct uml_net_private *lp; int err, size; + int random_mac; size = transport->private_size + sizeof(struct uml_net_private); @@ -417,7 +419,7 @@ static void eth_configure(int n, void *init, char *mac, */ snprintf(dev->name, sizeof(dev->name), "eth%d", n); - setup_etheraddr(mac, device->mac, dev->name); + random_mac = setup_etheraddr(mac, device->mac, dev->name); printk(KERN_INFO "Netdevice %d (%pM) : ", n, device->mac); @@ -474,6 +476,9 @@ static void eth_configure(int n, void *init, char *mac, /* don't use eth_mac_addr, it will not work here */ memcpy(dev->dev_addr, device->mac, ETH_ALEN); + if (random_mac) + dev->addr_assign_type |= NET_ADDR_RANDOM; + dev->mtu = transport->user->mtu; dev->netdev_ops = ¨_netdev_ops; dev->ethtool_ops = ¨_net_ethtool_ops; -- 1.7.8.3 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used 2012-02-17 15:43 ` [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used Danny Kukawka @ 2012-02-17 15:55 ` Richard Weinberger 2012-02-17 20:17 ` [uml-devel] " David Miller 2012-02-17 21:05 ` David Miller 1 sibling, 1 reply; 5+ messages in thread From: Richard Weinberger @ 2012-02-17 15:55 UTC (permalink / raw) To: Danny Kukawka Cc: Jeff Dike, Danny Kukawka, Andrew Morton, David S. Miller, Jiri Pirko, user-mode-linux-devel, linux-kernel On 17.02.2012 16:43, Danny Kukawka wrote: > Set addr_assign_type correctly to NET_ADDR_RANDOM in case > a random MAC address was generated and assigned to the netdevice. > > Return state from setup_etheraddr() about returning a random > MAC address or not and check this state in eth_configure(). > > Signed-off-by: Danny Kukawka<danny.kukawka@bisect.de> Acked-by: Richard Weinberger <richard@nod.at> Do you want me to pick up this patch or is it supposed to go though the net tree? Thanks, //richard ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [uml-devel] [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used 2012-02-17 15:55 ` Richard Weinberger @ 2012-02-17 20:17 ` David Miller 0 siblings, 0 replies; 5+ messages in thread From: David Miller @ 2012-02-17 20:17 UTC (permalink / raw) To: richard Cc: user-mode-linux-devel, jpirko, jdike, dkukawka, linux-kernel, danny.kukawka, akpm From: Richard Weinberger <richard@nod.at> Date: Fri, 17 Feb 2012 16:55:41 +0100 > On 17.02.2012 16:43, Danny Kukawka wrote: >> Set addr_assign_type correctly to NET_ADDR_RANDOM in case >> a random MAC address was generated and assigned to the netdevice. >> >> Return state from setup_etheraddr() about returning a random >> MAC address or not and check this state in eth_configure(). >> >> Signed-off-by: Danny Kukawka<danny.kukawka@bisect.de> > > Acked-by: Richard Weinberger <richard@nod.at> > > Do you want me to pick up this patch or is it supposed to go though > the net tree? I'll take care of it. ------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [uml-devel] [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used 2012-02-17 15:43 ` [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used Danny Kukawka 2012-02-17 15:55 ` Richard Weinberger @ 2012-02-17 21:05 ` David Miller 1 sibling, 0 replies; 5+ messages in thread From: David Miller @ 2012-02-17 21:05 UTC (permalink / raw) To: danny.kukawka Cc: user-mode-linux-devel, jpirko, richard, jdike, dkukawka, linux-kernel, akpm From: Danny Kukawka <danny.kukawka@bisect.de> Date: Fri, 17 Feb 2012 16:43:31 +0100 > Set addr_assign_type correctly to NET_ADDR_RANDOM in case > a random MAC address was generated and assigned to the netdevice. > > Return state from setup_etheraddr() about returning a random > MAC address or not and check this state in eth_configure(). > > Signed-off-by: Danny Kukawka <danny.kukawka@bisect.de> Applied. ------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-02-17 21:05 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-02-17 15:43 [PATCH v2 00/10] Part 4: handle addr_assign_type for random addresses Danny Kukawka 2012-02-17 15:43 ` [PATCH 10/10] UML net: set addr_assign_type if random_ether_addr() used Danny Kukawka 2012-02-17 15:55 ` Richard Weinberger 2012-02-17 20:17 ` [uml-devel] " David Miller 2012-02-17 21:05 ` David Miller
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox