From fff87d1c3e19c0a24a3b0d4cff3e9a8f6f140e34 Mon Sep 17 00:00:00 2001 From: Frederic Robra Date: Thu, 14 Nov 2019 15:18:32 +0100 Subject: added check for rid and discovery now takes bigger test block --- src/kernel/core.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'src/kernel/core.c') diff --git a/src/kernel/core.c b/src/kernel/core.c index 7e05505..ef41158 100644 --- a/src/kernel/core.c +++ b/src/kernel/core.c @@ -277,12 +277,21 @@ int dnbd3_add_device(struct dnbd3_device *dev, int minor) dev->tag_set.ops = &dnbd3_mq_ops; /* this can be changed later with blk_mq_update_nr_hw_queues() */ dev->tag_set.nr_hw_queues = 1; - dev->tag_set.timeout = 5 * HZ; + dev->tag_set.timeout = 10 * HZ; dev->tag_set.queue_depth = 128; dev->tag_set.numa_node = NUMA_NO_NODE; dev->tag_set.cmd_size = sizeof(struct dnbd3_cmd); - dev->tag_set.flags = BLK_MQ_F_SHOULD_MERGE | BLK_MQ_F_SG_MERGE | - BLK_MQ_F_BLOCKING; + /* + * nbd has this flags set (ther is no documentation) + * BLK_MQ_F_SHOULD_MERGE: Reverse check our software queue for entries + * that we could potentially merge with + * BLK_MQ_F_SG_MERGE: If SG merging is disabled, each bio vector is + * a segment. + * BLK_MQ_F_BLOCKING: Wait for rcu if blocking, else wait for rcu in + * each queue. + */ + dev->tag_set.flags = BLK_MQ_F_SHOULD_MERGE | BLK_MQ_F_SG_MERGE; +// | BLK_MQ_F_BLOCKING; dev->tag_set.driver_data = dev; err = blk_mq_alloc_tag_set(&dev->tag_set); -- cgit v1.2.3-55-g7522