diff options
author | Simon Rettberg | 2015-02-04 17:52:40 +0100 |
---|---|---|
committer | Simon Rettberg | 2015-02-04 17:52:40 +0100 |
commit | 9e1bfeca381c15ef0cd92fc9a3de58405b8edbad (patch) | |
tree | 4493db0330cd8b6eae85d7e8eb9706f152e8723b /src/server | |
parent | [SERVER] Use shared file handle for reading (diff) | |
download | dnbd3-9e1bfeca381c15ef0cd92fc9a3de58405b8edbad.tar.gz dnbd3-9e1bfeca381c15ef0cd92fc9a3de58405b8edbad.tar.xz dnbd3-9e1bfeca381c15ef0cd92fc9a3de58405b8edbad.zip |
[SERVER] Fix two minor bugs: Replication stall, integrity checker 100% CPU usage
Diffstat (limited to 'src/server')
-rw-r--r-- | src/server/integrity.c | 1 | ||||
-rw-r--r-- | src/server/uplink.c | 2 |
2 files changed, 1 insertions, 2 deletions
diff --git a/src/server/integrity.c b/src/server/integrity.c index efc54c5..e9b8ff3 100644 --- a/src/server/integrity.c +++ b/src/server/integrity.c @@ -118,7 +118,6 @@ static void* integrity_main(void * data UNUSED) } for (i = queueLen - 1; i >= 0; --i) { if ( _shutdown ) break; - if ( checkQueue[i].image == NULL ) continue; dnbd3_image_t * const image = image_lock( checkQueue[i].image ); checkQueue[i].image = NULL; if ( i + 1 == queueLen ) queueLen--; diff --git a/src/server/uplink.c b/src/server/uplink.c index 6f91700..bd776d1 100644 --- a/src/server/uplink.c +++ b/src/server/uplink.c @@ -124,7 +124,7 @@ void uplink_removeClient(dnbd3_connection_t *uplink, dnbd3_client_t *client) if ( uplink->queue[i].client == client ) { uplink->queue[i].client = NULL; uplink->queue[i].status = ULR_FREE; - if ( i > 20 && uplink->queueLen == i + 1 ) uplink->queueLen--; + if ( uplink->queueLen == i + 1 ) uplink->queueLen--; } } spin_unlock( &uplink->queueLock ); |