summary refs log tree commit diff stats
path: root/hw/net
diff options
context:
space:
mode:
authorAlexey Kirillov <lekiravi@yandex-team.ru>2021-03-03 12:59:08 +0300
committerJason Wang <jasowang@redhat.com>2021-03-15 16:41:22 +0800
commit59b5437eb732d6b103a9bc279c3482c834d1eff9 (patch)
tree9f0667074f09bf4fe8f7ac904a030e72189d9774 /hw/net
parent3c3b656885473ef0d699290ba966177f17839aa5 (diff)
downloadfocaccia-qemu-59b5437eb732d6b103a9bc279c3482c834d1eff9.tar.gz
focaccia-qemu-59b5437eb732d6b103a9bc279c3482c834d1eff9.zip
net: Move NetClientState.info_str to dynamic allocations
The info_str field of the NetClientState structure is static and has a size
of 256 bytes. This amount is often unclaimed, and the field itself is used
exclusively for HMP "info network".

The patch translates info_str to dynamic memory allocation.

This action is also allows us to painlessly discard usage of this field
for backend devices.

Signed-off-by: Alexey Kirillov <lekiravi@yandex-team.ru>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'hw/net')
-rw-r--r--hw/net/xen_nic.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/hw/net/xen_nic.c b/hw/net/xen_nic.c
index 5c815b4f0c..8431808ea0 100644
--- a/hw/net/xen_nic.c
+++ b/hw/net/xen_nic.c
@@ -296,9 +296,8 @@ static int net_init(struct XenLegacyDevice *xendev)
     netdev->nic = qemu_new_nic(&net_xen_info, &netdev->conf,
                                "xen", NULL, netdev);
 
-    snprintf(qemu_get_queue(netdev->nic)->info_str,
-             sizeof(qemu_get_queue(netdev->nic)->info_str),
-             "nic: xenbus vif macaddr=%s", netdev->mac);
+    qemu_get_queue(netdev->nic)->info_str = g_strdup_printf(
+        "nic: xenbus vif macaddr=%s", netdev->mac);
 
     /* fill info */
     xenstore_write_be_int(&netdev->xendev, "feature-rx-copy", 1);