diff options
Diffstat (limited to 'hw/net')
-rw-r--r-- | hw/net/rocker/rocker_of_dpa.c | 20 | ||||
-rw-r--r-- | hw/net/virtio-net.c | 21 |
2 files changed, 12 insertions, 29 deletions
diff --git a/hw/net/rocker/rocker_of_dpa.c b/hw/net/rocker/rocker_of_dpa.c index 8e347d1..b3b8c5b 100644 --- a/hw/net/rocker/rocker_of_dpa.c +++ b/hw/net/rocker/rocker_of_dpa.c @@ -2296,7 +2296,6 @@ static void of_dpa_flow_fill(void *cookie, void *value, void *user_data) struct of_dpa_flow_key *key = &flow->key; struct of_dpa_flow_key *mask = &flow->mask; struct of_dpa_flow_fill_context *flow_context = user_data; - RockerOfDpaFlowList *new; RockerOfDpaFlow *nflow; RockerOfDpaFlowKey *nkey; RockerOfDpaFlowMask *nmask; @@ -2307,8 +2306,7 @@ static void of_dpa_flow_fill(void *cookie, void *value, void *user_data) return; } - new = g_malloc0(sizeof(*new)); - nflow = new->value = g_malloc0(sizeof(*nflow)); + nflow = g_malloc0(sizeof(*nflow)); nkey = nflow->key = g_malloc0(sizeof(*nkey)); nmask = nflow->mask = g_malloc0(sizeof(*nmask)); naction = nflow->action = g_malloc0(sizeof(*naction)); @@ -2424,8 +2422,7 @@ static void of_dpa_flow_fill(void *cookie, void *value, void *user_data) naction->new_vlan_id = flow->action.apply.new_vlan_id; } - new->next = flow_context->list; - flow_context->list = new; + QAPI_LIST_PREPEND(flow_context->list, nflow); } RockerOfDpaFlowList *qmp_query_rocker_of_dpa_flows(const char *name, @@ -2469,9 +2466,7 @@ static void of_dpa_group_fill(void *key, void *value, void *user_data) { struct of_dpa_group *group = value; struct of_dpa_group_fill_context *flow_context = user_data; - RockerOfDpaGroupList *new; RockerOfDpaGroup *ngroup; - struct uint32List *id; int i; if (flow_context->type != 9 && @@ -2479,8 +2474,7 @@ static void of_dpa_group_fill(void *key, void *value, void *user_data) return; } - new = g_malloc0(sizeof(*new)); - ngroup = new->value = g_malloc0(sizeof(*ngroup)); + ngroup = g_malloc0(sizeof(*ngroup)); ngroup->id = group->id; @@ -2525,10 +2519,7 @@ static void of_dpa_group_fill(void *key, void *value, void *user_data) ngroup->index = ROCKER_GROUP_INDEX_GET(group->id); for (i = 0; i < group->l2_flood.group_count; i++) { ngroup->has_group_ids = true; - id = g_malloc0(sizeof(*id)); - id->value = group->l2_flood.group_ids[i]; - id->next = ngroup->group_ids; - ngroup->group_ids = id; + QAPI_LIST_PREPEND(ngroup->group_ids, group->l2_flood.group_ids[i]); } break; case ROCKER_OF_DPA_GROUP_TYPE_L3_UCAST: @@ -2557,8 +2548,7 @@ static void of_dpa_group_fill(void *key, void *value, void *user_data) break; } - new->next = flow_context->list; - flow_context->list = new; + QAPI_LIST_PREPEND(flow_context->list, ngroup); } RockerOfDpaGroupList *qmp_query_rocker_of_dpa_groups(const char *name, diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 044ac95..8356eee 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -437,17 +437,14 @@ static void rxfilter_notify(NetClientState *nc) static intList *get_vlan_table(VirtIONet *n) { - intList *list, *entry; + intList *list; int i, j; list = NULL; for (i = 0; i < MAX_VLAN >> 5; i++) { for (j = 0; n->vlans[i] && j <= 0x1f; j++) { if (n->vlans[i] & (1U << j)) { - entry = g_malloc0(sizeof(*entry)); - entry->value = (i << 5) + j; - entry->next = list; - list = entry; + QAPI_LIST_PREPEND(list, (i << 5) + j); } } } @@ -460,7 +457,7 @@ static RxFilterInfo *virtio_net_query_rxfilter(NetClientState *nc) VirtIONet *n = qemu_get_nic_opaque(nc); VirtIODevice *vdev = VIRTIO_DEVICE(n); RxFilterInfo *info; - strList *str_list, *entry; + strList *str_list; int i; info = g_malloc0(sizeof(*info)); @@ -491,19 +488,15 @@ static RxFilterInfo *virtio_net_query_rxfilter(NetClientState *nc) str_list = NULL; for (i = 0; i < n->mac_table.first_multi; i++) { - entry = g_malloc0(sizeof(*entry)); - entry->value = qemu_mac_strdup_printf(n->mac_table.macs + i * ETH_ALEN); - entry->next = str_list; - str_list = entry; + QAPI_LIST_PREPEND(str_list, + qemu_mac_strdup_printf(n->mac_table.macs + i * ETH_ALEN)); } info->unicast_table = str_list; str_list = NULL; for (i = n->mac_table.first_multi; i < n->mac_table.in_use; i++) { - entry = g_malloc0(sizeof(*entry)); - entry->value = qemu_mac_strdup_printf(n->mac_table.macs + i * ETH_ALEN); - entry->next = str_list; - str_list = entry; + QAPI_LIST_PREPEND(str_list, + qemu_mac_strdup_printf(n->mac_table.macs + i * ETH_ALEN)); } info->multicast_table = str_list; info->vlan_table = get_vlan_table(n); |