From 69e354e2ec419459a215fa323d2009593ca5e789 Mon Sep 17 00:00:00 2001 From: Rafael Gieschke Date: Fri, 23 Mar 2018 23:59:15 +0100 Subject: Follow https://github.com/torvalds/linux/commit/aebf526b53aea164508730427597d45f3e06b376 --- src/kernel/blk.c | 8 ++++---- src/kernel/net.c | 14 +++++++------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/kernel/blk.c b/src/kernel/blk.c index 5dec195..6f2523c 100644 --- a/src/kernel/blk.c +++ b/src/kernel/blk.c @@ -267,7 +267,7 @@ void dnbd3_blk_request(struct request_queue *q) continue; } - if (req->cmd_type != REQ_TYPE_FS) + if (req_op(req) != REQ_OP_READ && req_op(req) != REQ_OP_WRITE) { __blk_end_request_all(req, 0); continue; @@ -279,7 +279,7 @@ void dnbd3_blk_request(struct request_queue *q) continue; } - if (rq_data_dir(req) != READ) + if (req_op(req) != REQ_OP_READ) { __blk_end_request_all(req, -EACCES); continue; @@ -341,13 +341,13 @@ void dnbd3_blk_fail_all_requests(dnbd3_device_t *dev) list_for_each_entry_safe(blk_request, tmp_request, &local_copy, queuelist) { list_del_init(&blk_request->queuelist); - if (blk_request->cmd_type == REQ_TYPE_FS) + if (req_op(blk_request) == REQ_OP_READ || req_op(blk_request) == REQ_OP_WRITE) { spin_lock_irqsave(&dev->blk_lock, flags); __blk_end_request_all(blk_request, -EIO); spin_unlock_irqrestore(&dev->blk_lock, flags); } - else if (blk_request->cmd_type == REQ_TYPE_SPECIAL) + else if (blk_rq_is_private(blk_request)) { kfree(blk_request); } diff --git a/src/kernel/net.c b/src/kernel/net.c index f6de404..6895c6b 100644 --- a/src/kernel/net.c +++ b/src/kernel/net.c @@ -273,8 +273,7 @@ int dnbd3_net_connect(dnbd3_device_t *dev) dev->panic_count = 0; // Enqueue request to request_queue_send for a fresh list of alt servers - req1->cmd_type = REQ_TYPE_SPECIAL; - req1->cmd_flags = CMD_GET_SERVERS; + req1->cmd_flags = REQ_OP_DRV_IN | CMD_GET_SERVERS; list_add(&req1->queuelist, &dev->request_queue_send); // create required threads @@ -374,8 +373,7 @@ void dnbd3_net_heartbeat(unsigned long arg) // send keepalive if (req) { - req->cmd_type = REQ_TYPE_SPECIAL; - req->cmd_flags = CMD_KEEPALIVE; + req->cmd_flags = REQ_OP_DRV_IN | CMD_KEEPALIVE; list_add_tail(&req->queuelist, &dev->request_queue_send); wake_up(&dev->process_queue_send); } @@ -846,9 +844,10 @@ int dnbd3_net_send(void *data) spin_unlock_irqrestore(&dev->blk_lock, irqflags); // what to do? - switch (blk_request->cmd_type) + switch (req_op(blk_request)) { - case REQ_TYPE_FS: + case REQ_OP_READ: + case REQ_OP_WRITE: dnbd3_request.cmd = CMD_GET_BLOCK; dnbd3_request.offset = blk_rq_pos(blk_request) << 9; // *512 dnbd3_request.size = blk_rq_bytes(blk_request); // bytes left to complete entire request @@ -859,7 +858,8 @@ int dnbd3_net_send(void *data) spin_unlock_irqrestore(&dev->blk_lock, irqflags); break; - case REQ_TYPE_SPECIAL: + case REQ_OP_DRV_IN: + case REQ_OP_DRV_OUT: dnbd3_request.cmd = blk_request->cmd_flags; dnbd3_request.size = 0; spin_lock_irqsave(&dev->blk_lock, irqflags); -- cgit v1.2.3-55-g7522