diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index b6414e1e645b..3a00ae9b4867 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -475,10 +475,11 @@ static enum blk_eh_timer_return nbd_xmit_timeout(struct request *req) */ struct nbd_sock *nsock = config->socks[cmd->index]; cmd->retries++; - dev_info(nbd_to_dev(nbd), "Possible stuck request %p: control (%s@%llu,%uB). Runtime %u seconds\n", + dev_info(nbd_to_dev(nbd), "Possible stuck request %p: control (%s@%llu,%uB). Runtime %u seconds, nbd: %p, d: %p\n", req, nbdcmd_to_ascii(req_to_nbd_cmd_type(req)), (unsigned long long)blk_rq_pos(req) << 9, - blk_rq_bytes(req), (req->timeout / HZ) * cmd->retries); + blk_rq_bytes(req), (req->timeout / HZ) * cmd->retries, + nbd, nbd->disk); mutex_lock(&nsock->tx_lock); if (cmd->cookie != nsock->cookie) { @@ -733,7 +734,7 @@ static int nbd_read_reply(struct nbd_device *nbd, struct socket *sock, if (result < 0) { if (!nbd_disconnected(nbd->config)) dev_err(disk_to_dev(nbd->disk), - "Receive control failed (result %d)\n", result); + "Receive control failed (result %d), nbd: %p, d: %p\n", result, nbd, nbd->disk); return result; } @@ -1394,6 +1395,9 @@ static int nbd_start_device(struct nbd_device *nbd) } set_bit(NBD_RT_HAS_PID_FILE, &config->runtime_flags); + if (num_connections == 1 && !nbd->tag_set.timeout) + nbd->tag_set.timeout = HZ * 1024; + nbd_dev_dbg_init(nbd); for (i = 0; i < num_connections; i++) { struct recv_thread_args *args; @@ -1424,6 +1428,7 @@ static int nbd_start_device(struct nbd_device *nbd) args->nsock = config->socks[i]; args->index = i; queue_work(nbd->recv_workq, &args->work); + printk("%p, %p, bs: %lld, blks: %lld, c: %d, %s\n", nbd, nbd->disk, config->bytesize, nbd_blksize(config), num_connections, __func__); } return nbd_set_size(nbd, config->bytesize, nbd_blksize(config)); }