From 36cf3a03b229eef31bcb53e7b9b09f829010f8dc Mon Sep 17 00:00:00 2001 From: Sebastian Date: Fri, 20 Aug 2010 10:24:13 +0200 Subject: working with current kernel, ifdef switch for other kernel versions needs to be implemented --- kernel/core.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'kernel/core.c') diff --git a/kernel/core.c b/kernel/core.c index 01ff4b1..5ec7515 100644 --- a/kernel/core.c +++ b/kernel/core.c @@ -26,14 +26,14 @@ void dnbd2_request(request_queue_t *q) struct req_info *info; dnbd2_device_t *dev; - while ((req = elv_next_request(q)) != NULL) { + while ((req = blk_peek_request(q)) != NULL) { /* Discard invalid block requests. */ if (!blk_fs_request(req)) { - end_request(req, 0); + __blk_end_request_cur(req, -EIO); continue; } if (rq_data_dir(req) != READ) { - end_request(req, 0); + __blk_end_request_cur(req, -EIO); continue; } @@ -52,7 +52,7 @@ void dnbd2_request(request_queue_t *q) info->cmd = CMD_GET_BLOCK; info->dst = dev->active_server; req->special = info; - blkdev_dequeue_request(req); + req = blk_fetch_request(q); /* Enqueue the request for sending. */ spin_lock_bh(&dev->send_queue_lock); @@ -156,7 +156,7 @@ void dnbd2_send_request(struct request *req, dnbd2_device_t *dev) { dnbd2_req.time = cpu_to_be16(info->time); dnbd2_req.vid = cpu_to_be16(dev->vid); dnbd2_req.rid = cpu_to_be16(dev->rid); - dnbd2_req.num = cpu_to_be64(req->sector * SECTOR_SIZE); + dnbd2_req.num = cpu_to_be64(req->__sector * SECTOR_SIZE); /* * If sock_xmit fails the request eventually gets requeued. @@ -275,7 +275,7 @@ struct request *dnbd2_find_request(uint64_t num, req = blkdev_entry_to_request(cur); info = req->special; - if (req->sector == sector && info->cmd == cmd) { + if (req->__sector == sector && info->cmd == cmd) { list_del_init(&req->queuelist); spin_unlock_bh(&dev->pending_queue_lock); return req; @@ -315,9 +315,9 @@ void dnbd2_end_request(struct request *req, int success) spin_lock_irqsave(&dev->blk_lock, flags); list_del_init(&req->queuelist); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25) - if(!__blk_end_request(req, success, req->nr_sectors)) { + if(!__blk_end_request(req, success, blk_rq_sectors(req))) { #else - if (!end_that_request_first(req, success, req->nr_sectors)) { + if (!end_that_request_first(req, success, blk_rq_sectors(req))) { end_that_request_last(req, success); #endif } -- cgit v1.2.3-55-g7522