diff options
author | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2004-12-20 17:35:31 +0000 |
---|---|---|
committer | kaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk> | 2004-12-20 17:35:31 +0000 |
commit | bc37c20fa50b1b735255dc0b9e6d59030368ead2 (patch) | |
tree | ffb96147d2efa224a2f608aa87b83502c77a8db4 | |
parent | 3880d16aa8db5beb3f4e5f6c429f839a4a777480 (diff) | |
download | xen-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.c | 10 |
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 ) { |