aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2004-12-20 17:35:31 +0000
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2004-12-20 17:35:31 +0000
commitbc37c20fa50b1b735255dc0b9e6d59030368ead2 (patch)
treeffb96147d2efa224a2f608aa87b83502c77a8db4
parent3880d16aa8db5beb3f4e5f6c429f839a4a777480 (diff)
downloadxen-bc37c20fa50b1b735255dc0b9e6d59030368ead2.tar.gz
xen-bc37c20fa50b1b735255dc0b9e6d59030368ead2.tar.bz2
xen-bc37c20fa50b1b735255dc0b9e6d59030368ead2.zip
bitkeeper revision 1.1159.187.69 (41c70d63jlyWGYhaHG_UYY__odoBCw)
Better MAC-address initialisation in netback.
-rw-r--r--linux-2.6.9-xen-sparse/drivers/xen/netback/interface.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/linux-2.6.9-xen-sparse/drivers/xen/netback/interface.c b/linux-2.6.9-xen-sparse/drivers/xen/netback/interface.c
index baa50ace22..8de03f644b 100644
--- a/linux-2.6.9-xen-sparse/drivers/xen/netback/interface.c
+++ b/linux-2.6.9-xen-sparse/drivers/xen/netback/interface.c
@@ -124,13 +124,17 @@ void netif_create(netif_be_create_t *create)
dev->hard_start_xmit = netif_be_start_xmit;
dev->get_stats = netif_be_get_stats;
- memcpy(dev->dev_addr, create->mac, ETH_ALEN);
/* Disable queuing. */
dev->tx_queue_len = 0;
- /* Force a different MAC from remote end. */
- dev->dev_addr[2] ^= 1;
+ /*
+ * Initialise a dummy MAC address. We choose the numerically largest
+ * non-broadcast address to prevent the address getting stolen by an
+ * Ethernet bridge for STP purposes. (FE:FF:FF:FF:FF:FF)
+ */
+ memset(dev->dev_addr, 0xFF, ETH_ALEN);
+ dev->dev_addr[0] &= ~0x01;
if ( (err = register_netdev(dev)) != 0 )
{