summaryrefslogtreecommitdiffstats
path: root/src/kernel/blk.c
diff options
context:
space:
mode:
authorSimon Rettberg2016-01-11 11:59:03 +0100
committerSimon Rettberg2016-01-11 11:59:03 +0100
commitaedf8c534195772f60e7c6409ae045fa20415aef (patch)
treeb987e1d389df2dfe6bec66b5215b94193dfcff6c /src/kernel/blk.c
parent[FUSE] Handle SIGINT/SIGTERM to abort pending reads (diff)
downloaddnbd3-aedf8c534195772f60e7c6409ae045fa20415aef.tar.gz
dnbd3-aedf8c534195772f60e7c6409ae045fa20415aef.tar.xz
dnbd3-aedf8c534195772f60e7c6409ae045fa20415aef.zip
[KERNEL/CLIENT] Several minor tweaks and changes
- Disable panic timeout that reports errors to block layer by default - Get rid of "is_server" used by old proxy mode, introduce "honor_server_alts" that just controls whether we use alts provided by the server - Allow switching servers when we only have 3 RTT measurements - If using alts provided by server, don't ignore those that come from other servers than the initial one
Diffstat (limited to 'src/kernel/blk.c')
-rw-r--r--src/kernel/blk.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/kernel/blk.c b/src/kernel/blk.c
index e55de25..3e3cdd7 100644
--- a/src/kernel/blk.c
+++ b/src/kernel/blk.c
@@ -169,7 +169,7 @@ int dnbd3_blk_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd, u
memcpy(&dev->initial_server, &dev->cur_server, sizeof(dev->initial_server));
dev->imgname = imgname;
dev->rid = msg->rid;
- dev->is_server = msg->is_server;
+ dev->use_server_provided_alts = msg->use_server_provided_alts;
// Forget all alt servers on explicit connect, set first al server to initial server
memset(dev->alt_servers, 0, sizeof(dev->alt_servers[0])*NUMBER_SERVERS);
memcpy(dev->alt_servers, &dev->initial_server, sizeof(dev->alt_servers[0]));
@@ -266,7 +266,7 @@ void dnbd3_blk_request(struct request_queue *q)
continue;
}
- if (dev->panic_count >= PROBE_COUNT_TIMEOUT)
+ if (PROBE_COUNT_TIMEOUT > 0 && dev->panic_count >= PROBE_COUNT_TIMEOUT)
{
__blk_end_request_all(req, -EIO);
continue;