aboutsummaryrefslogtreecommitdiff
path: root/hw/net
diff options
context:
space:
mode:
authorAmos Kong <akong@redhat.com>2013-10-17 15:02:50 +0800
committerStefan Hajnoczi <stefanha@redhat.com>2013-10-18 13:28:09 +0200
commit23c37c37f0280761072c23bf67d3a4f3c0ff25aa (patch)
tree40b45409f7d23b2705304a0a8fc6b74e4253407e /hw/net
parent7c36507c2b8776266f50c5e2739bd18279953b93 (diff)
downloadqemu-23c37c37f0280761072c23bf67d3a4f3c0ff25aa.zip
qemu-23c37c37f0280761072c23bf67d3a4f3c0ff25aa.tar.gz
qemu-23c37c37f0280761072c23bf67d3a4f3c0ff25aa.tar.bz2
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>
Diffstat (limited to 'hw/net')
-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 9b4a650..3225f3d 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 */