summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmos Kong <akong@redhat.com>2013-10-17 16:38:34 +0800
committerStefan Hajnoczi <stefanha@redhat.com>2013-10-18 13:28:09 +0200
commit655d3b63b036b70714adbdae685055f1bda0f8f1 (patch)
treeecc63ae5853998a6f03b0120b9376e74aa05a7fa
parent1680d485777ecf436d724631ea8722cc0c66990e (diff)
downloadqemu-655d3b63b036b70714adbdae685055f1bda0f8f1.zip
net: update nic info during device reset
macaddr is reset during device reset, but nic info isn't updated, this problem exists in e1000 & rtl8139 Signed-off-by: Amos Kong <akong@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r--hw/net/e1000.c1
-rw-r--r--hw/net/rtl8139.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index 151d25e0b7..9a1c46e8ca 100644
--- a/hw/net/e1000.c
+++ b/hw/net/e1000.c
@@ -401,6 +401,7 @@ static void e1000_reset(void *opaque)
d->mac_reg[RA] |= macaddr[i] << (8 * i);
d->mac_reg[RA + 1] |= (i < 2) ? macaddr[i + 4] << (8 * i) : 0;
}
+ qemu_format_nic_info_str(qemu_get_queue(d->nic), macaddr);
}
static void
diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
index c31199f8c8..9b4a6501d7 100644
--- a/hw/net/rtl8139.c
+++ b/hw/net/rtl8139.c
@@ -1214,6 +1214,7 @@ static void rtl8139_reset(DeviceState *d)
/* restore MAC address */
memcpy(s->phys, s->conf.macaddr.a, 6);
+ qemu_format_nic_info_str(qemu_get_queue(s->nic), s->phys);
/* reset interrupt mask */
s->IntrStatus = 0;