summaryrefslogtreecommitdiffstats
path: root/src/kernel/core.c
diff options
context:
space:
mode:
authorFrederic Robra2019-07-16 16:53:17 +0200
committerFrederic Robra2019-07-16 16:53:17 +0200
commit69ebaaf47baa159c4d82e8c512c03d004e125175 (patch)
treecb3348a2807e82b7846bc3e8bdc4499886b84ab6 /src/kernel/core.c
parentadded macros for debugging (diff)
downloaddnbd3-ng-69ebaaf47baa159c4d82e8c512c03d004e125175.tar.gz
dnbd3-ng-69ebaaf47baa159c4d82e8c512c03d004e125175.tar.xz
dnbd3-ng-69ebaaf47baa159c4d82e8c512c03d004e125175.zip
discovery now connects to new slots
Diffstat (limited to 'src/kernel/core.c')
-rw-r--r--src/kernel/core.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/kernel/core.c b/src/kernel/core.c
index 2664090..9d930cb 100644
--- a/src/kernel/core.c
+++ b/src/kernel/core.c
@@ -82,7 +82,7 @@ static int dnbd3_handle_cmd(struct dnbd3_cmd *cmd, int index)
int i;
int sock_alive = 0;
- debug_dev(dev, "handle request at position %lu and size %d", blk_rq_pos(req), blk_rq_bytes(req));
+ debug_dev(dev, "handle request at position %lu, size %d, index %d", blk_rq_pos(req), blk_rq_bytes(req), index);
// if (index >= 1) { // TODO use next server with good rtt for this request
// printk(KERN_INFO "dnbd3: index is %d", index);
@@ -94,7 +94,7 @@ static int dnbd3_handle_cmd(struct dnbd3_cmd *cmd, int index)
for (i = 0; i < NUMBER_CONNECTIONS; i++) {
if (dnbd3_is_sock_alive(dev->socks[i])) {
if (index == sock_alive) {
- sock = &dev->socks[index];
+ sock = &dev->socks[i];
}
sock_alive++;
}
@@ -260,6 +260,7 @@ static int dnbd3_ioctl(struct block_device *bdev, fmode_t mode, unsigned int cmd
}
memcpy(&dev->initial_server.host, &msg->host, sizeof(msg->host));
dev->initial_server.failures = 0;
+ dev->initial_server.rtts[0] = dev->initial_server.rtts[1] = dev->initial_server.rtts[2] = dev->initial_server.rtts[3] = RTT_UNREACHABLE;
// memcpy(&dev->initial_server, &dev->cur_server, sizeof(dev->initial_server));
dev->imgname = imgname;
dev->rid = msg->rid;