[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 2/3] net: extract notify_link_status_changed() fu
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PATCH v2 2/3] net: extract notify_link_status_changed() function |
Date: |
Fri, 19 Oct 2012 19:08:21 +0200 |
From: Stefan Hajnoczi <address@hidden>
The code to invoke the NetClientInfo .link_status_changed() callback is
duplicated in several places. Create a single
notify_link_status_changed() function and avoid duplication.
This is useful because later patches change net internals. By having a
single function it is easier to make changes without affecting callers.
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
net.c | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/net.c b/net.c
index eb4f4bf..67d2616 100644
--- a/net.c
+++ b/net.c
@@ -153,6 +153,13 @@ void qemu_macaddr_default_if_unset(MACAddr *macaddr)
macaddr->a[5] = 0x56 + index++;
}
+static void notify_link_status_changed(NetClientState *nc)
+{
+ if (nc->info->link_status_changed) {
+ nc->info->link_status_changed(nc);
+ }
+}
+
/**
* Generate a name for net client
*
@@ -266,9 +273,7 @@ void qemu_del_net_client(NetClientState *nc)
nic->peer_deleted = true;
/* Let NIC know peer is gone. */
nc->peer->link_down = true;
- if (nc->peer->info->link_status_changed) {
- nc->peer->info->link_status_changed(nc->peer);
- }
+ notify_link_status_changed(nc->peer);
qemu_cleanup_net_client(nc);
return;
}
@@ -894,9 +899,7 @@ done:
nc->link_down = !up;
- if (nc->info->link_status_changed) {
- nc->info->link_status_changed(nc);
- }
+ notify_link_status_changed(nc);
/* Notify peer. Don't update peer link status: this makes it possible to
* disconnect from host network without notifying the guest.
@@ -905,8 +908,8 @@ done:
* Current behaviour is compatible with qemu vlans where there could be
* multiple clients that can still communicate with each other in
* disconnected mode. For now maintain this compatibility. */
- if (nc->peer && nc->peer->info->link_status_changed) {
- nc->peer->info->link_status_changed(nc->peer);
+ if (nc->peer) {
+ notify_link_status_changed(nc->peer);
}
}
--
1.7.11.7