Skip to content

Commit

Permalink
net: Move hmp_info_network() to net-hmp-cmds.c
Browse files Browse the repository at this point in the history
Signed-off-by: Markus Armbruster <[email protected]>
Message-Id: <[email protected]>
  • Loading branch information
Markus Armbruster committed Feb 4, 2023
1 parent 2030ca3 commit ae71d13
Show file tree
Hide file tree
Showing 6 changed files with 33 additions and 30 deletions.
1 change: 1 addition & 0 deletions include/monitor/hmp.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ void hmp_ringbuf_read(Monitor *mon, const QDict *qdict);
void hmp_cont(Monitor *mon, const QDict *qdict);
void hmp_system_wakeup(Monitor *mon, const QDict *qdict);
void hmp_nmi(Monitor *mon, const QDict *qdict);
void hmp_info_network(Monitor *mon, const QDict *qdict);
void hmp_set_link(Monitor *mon, const QDict *qdict);
void hmp_balloon(Monitor *mon, const QDict *qdict);
void hmp_loadvm(Monitor *mon, const QDict *qdict);
Expand Down
4 changes: 3 additions & 1 deletion include/net/net.h
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,8 @@ struct NetClientState {
QTAILQ_HEAD(, NetFilterState) filters;
};

typedef QTAILQ_HEAD(NetClientStateList, NetClientState) NetClientStateList;

typedef struct NICState {
NetClientState *ncs;
NICConf *conf;
Expand Down Expand Up @@ -196,7 +198,6 @@ int qemu_find_nic_model(NICInfo *nd, const char * const *models,
const char *default_model);

void print_net_client(Monitor *mon, NetClientState *nc);
void hmp_info_network(Monitor *mon, const QDict *qdict);
void net_socket_rs_init(SocketReadState *rs,
SocketReadStateFinalize *finalize,
bool vnet_hdr);
Expand All @@ -222,6 +223,7 @@ extern NICInfo nd_table[MAX_NICS];
extern const char *host_net_devices[];

/* from net.c */
extern NetClientStateList net_clients;
bool netdev_is_modern(const char *optarg);
void netdev_parse_modern(const char *optarg);
void net_client_parse(QemuOptsList *opts_list, const char *str);
Expand Down
1 change: 0 additions & 1 deletion monitor/hmp-cmds.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@

#include "qemu/osdep.h"
#include "monitor/hmp.h"
#include "net/net.h"
#include "sysemu/runstate.h"
#include "qemu/sockets.h"
#include "qemu/help_option.h"
Expand Down
1 change: 0 additions & 1 deletion monitor/misc.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
#include "monitor-internal.h"
#include "monitor/qdev.h"
#include "exec/gdbstub.h"
#include "net/net.h"
#include "net/slirp.h"
#include "ui/qemu-spice.h"
#include "qemu/ctype.h"
Expand Down
28 changes: 28 additions & 0 deletions net/net-hmp-cmds.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@
#include "qemu/osdep.h"
#include "migration/misc.h"
#include "monitor/hmp.h"
#include "monitor/monitor.h"
#include "net/net.h"
#include "net/hub.h"
#include "qapi/clone-visitor.h"
#include "qapi/qapi-commands-net.h"
#include "qapi/qapi-visit-net.h"
Expand All @@ -25,6 +27,32 @@
#include "qemu/help_option.h"
#include "qemu/option.h"

void hmp_info_network(Monitor *mon, const QDict *qdict)
{
NetClientState *nc, *peer;
NetClientDriver type;

net_hub_info(mon);

QTAILQ_FOREACH(nc, &net_clients, next) {
peer = nc->peer;
type = nc->info->type;

/* Skip if already printed in hub info */
if (net_hub_id_for_client(nc, NULL) == 0) {
continue;
}

if (!peer || type == NET_CLIENT_DRIVER_NIC) {
print_net_client(mon, nc);
} /* else it's a netdev connected to a NIC, printed with the NIC */
if (peer && type == NET_CLIENT_DRIVER_NIC) {
monitor_printf(mon, " \\ ");
print_net_client(mon, peer);
}
}
}

void hmp_set_link(Monitor *mon, const QDict *qdict)
{
const char *name = qdict_get_str(qdict, "name");
Expand Down
28 changes: 1 addition & 27 deletions net/net.c
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
#endif

static VMChangeStateEntry *net_change_state_entry;
static QTAILQ_HEAD(, NetClientState) net_clients;
NetClientStateList net_clients;

typedef struct NetdevQueueEntry {
Netdev *nd;
Expand Down Expand Up @@ -1345,32 +1345,6 @@ RxFilterInfoList *qmp_query_rx_filter(const char *name, Error **errp)
return filter_list;
}

void hmp_info_network(Monitor *mon, const QDict *qdict)
{
NetClientState *nc, *peer;
NetClientDriver type;

net_hub_info(mon);

QTAILQ_FOREACH(nc, &net_clients, next) {
peer = nc->peer;
type = nc->info->type;

/* Skip if already printed in hub info */
if (net_hub_id_for_client(nc, NULL) == 0) {
continue;
}

if (!peer || type == NET_CLIENT_DRIVER_NIC) {
print_net_client(mon, nc);
} /* else it's a netdev connected to a NIC, printed with the NIC */
if (peer && type == NET_CLIENT_DRIVER_NIC) {
monitor_printf(mon, " \\ ");
print_net_client(mon, peer);
}
}
}

void colo_notify_filters_event(int event, Error **errp)
{
NetClientState *nc;
Expand Down

0 comments on commit ae71d13

Please sign in to comment.