summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmos Kong2013-10-17 09:02:50 +0200
committerStefan Hajnoczi2013-10-18 13:28:09 +0200
commit23c37c37f0280761072c23bf67d3a4f3c0ff25aa (patch)
tree40b45409f7d23b2705304a0a8fc6b74e4253407e
parentnet/e1000: update network information when macaddr is changed in guest (diff)
downloadqemu-23c37c37f0280761072c23bf67d3a4f3c0ff25aa.tar.gz
qemu-23c37c37f0280761072c23bf67d3a4f3c0ff25aa.tar.xz
qemu-23c37c37f0280761072c23bf67d3a4f3c0ff25aa.zip
net/rtl8139: update network information when macaddr is changed in guest
rtl8139 has same problem as e1000, nic info isn't updated when macaddr is changed in guest. This patch updates the nic info when the last bit of macaddr is written. Signed-off-by: Amos Kong <akong@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r--hw/net/rtl8139.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
index 9b4a6501d7..3225f3d3e5 100644
--- a/hw/net/rtl8139.c
+++ b/hw/net/rtl8139.c
@@ -2741,8 +2741,12 @@ static void rtl8139_io_writeb(void *opaque, uint8_t addr, uint32_t val)
switch (addr)
{
- case MAC0 ... MAC0+5:
+ case MAC0 ... MAC0+4:
+ s->phys[addr - MAC0] = val;
+ break;
+ case MAC0+5:
s->phys[addr - MAC0] = val;
+ qemu_format_nic_info_str(qemu_get_queue(s->nic), s->phys);
break;
case MAC0+6 ... MAC0+7:
/* reserved */