[Spice-devel] [spice-server 2/6] Use bool in ConnectivityMonitor
Christophe Fergeau
cfergeau at redhat.com
Fri Apr 7 14:31:07 UTC 2017
Their uint32_t value is never used, all that matters is whether we
received data or not.
---
server/red-channel-client.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/server/red-channel-client.c b/server/red-channel-client.c
index ef0e892..c988170 100644
--- a/server/red-channel-client.c
+++ b/server/red-channel-client.c
@@ -80,8 +80,8 @@ typedef struct RedChannelClientLatencyMonitor {
typedef struct RedChannelClientConnectivityMonitor {
int state;
- uint32_t out_bytes;
- uint32_t in_bytes;
+ bool sent_bytes;
+ bool received_bytes;
uint32_t timeout;
SpiceTimer *timer;
} RedChannelClientConnectivityMonitor;
@@ -465,7 +465,7 @@ RedChannel* red_channel_client_get_channel(RedChannelClient *rcc)
static void red_channel_client_data_sent(RedChannelClient *rcc, int n)
{
if (rcc->priv->connectivity_monitor.timer) {
- rcc->priv->connectivity_monitor.out_bytes += n;
+ rcc->priv->connectivity_monitor.sent_bytes = true;
}
stat_inc_counter(rcc->priv->out_bytes, n);
}
@@ -473,7 +473,7 @@ static void red_channel_client_data_sent(RedChannelClient *rcc, int n)
static void red_channel_client_data_read(RedChannelClient *rcc, int n)
{
if (rcc->priv->connectivity_monitor.timer) {
- rcc->priv->connectivity_monitor.in_bytes += n;
+ rcc->priv->connectivity_monitor.received_bytes = true;
}
}
@@ -746,7 +746,7 @@ static void red_channel_client_connectivity_timer(void *opaque)
int is_alive = TRUE;
if (monitor->state == CONNECTIVITY_STATE_BLOCKED) {
- if (monitor->in_bytes == 0 && monitor->out_bytes == 0) {
+ if (!monitor->received_bytes && !monitor->sent_bytes) {
if (!rcc->priv->send_data.blocked && !red_channel_client_waiting_for_ack(rcc)) {
spice_error("mismatch between rcc-state and connectivity-state");
}
@@ -754,7 +754,7 @@ static void red_channel_client_connectivity_timer(void *opaque)
is_alive = FALSE;
}
} else if (monitor->state == CONNECTIVITY_STATE_WAIT_PONG) {
- if (monitor->in_bytes == 0) {
+ if (!monitor->received_bytes) {
if (rcc->priv->latency_monitor.state != PING_STATE_WARMUP &&
rcc->priv->latency_monitor.state != PING_STATE_LATENCY) {
spice_error("mismatch between rcc-state and connectivity-state");
@@ -766,8 +766,8 @@ static void red_channel_client_connectivity_timer(void *opaque)
if (is_alive) {
SpiceCoreInterfaceInternal *core = red_channel_get_core_interface(rcc->priv->channel);
- monitor->in_bytes = 0;
- monitor->out_bytes = 0;
+ monitor->received_bytes = false;
+ monitor->sent_bytes = false;
if (rcc->priv->send_data.blocked || red_channel_client_waiting_for_ack(rcc)) {
monitor->state = CONNECTIVITY_STATE_BLOCKED;
} else if (rcc->priv->latency_monitor.state == PING_STATE_WARMUP ||
--
2.9.3
More information about the Spice-devel
mailing list