diff options
-rw-r--r-- | src/kernel/blk.c | 8 | ||||
-rw-r--r-- | 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); |