mmc: sh_mobile_sdhi: remove superfluous check in SCC error check
[linux-2.6-block.git] / block / elevator.c
index f7d973a56fd75076d816d8a52bc1169b7dc2ae36..40f0c04e5ad3d076ee24d34f3424b9e42194d454 100644 (file)
@@ -245,31 +245,31 @@ EXPORT_SYMBOL(elevator_exit);
 static inline void __elv_rqhash_del(struct request *rq)
 {
        hash_del(&rq->hash);
-       rq->cmd_flags &= ~REQ_HASHED;
+       rq->rq_flags &= ~RQF_HASHED;
 }
 
-static void elv_rqhash_del(struct request_queue *q, struct request *rq)
+void elv_rqhash_del(struct request_queue *q, struct request *rq)
 {
        if (ELV_ON_HASH(rq))
                __elv_rqhash_del(rq);
 }
 
-static void elv_rqhash_add(struct request_queue *q, struct request *rq)
+void elv_rqhash_add(struct request_queue *q, struct request *rq)
 {
        struct elevator_queue *e = q->elevator;
 
        BUG_ON(ELV_ON_HASH(rq));
        hash_add(e->hash, &rq->hash, rq_hash_key(rq));
-       rq->cmd_flags |= REQ_HASHED;
+       rq->rq_flags |= RQF_HASHED;
 }
 
-static void elv_rqhash_reposition(struct request_queue *q, struct request *rq)
+void elv_rqhash_reposition(struct request_queue *q, struct request *rq)
 {
        __elv_rqhash_del(rq);
        elv_rqhash_add(q, rq);
 }
 
-static struct request *elv_rqhash_find(struct request_queue *q, sector_t offset)
+struct request *elv_rqhash_find(struct request_queue *q, sector_t offset)
 {
        struct elevator_queue *e = q->elevator;
        struct hlist_node *next;
@@ -352,7 +352,6 @@ void elv_dispatch_sort(struct request_queue *q, struct request *rq)
 {
        sector_t boundary;
        struct list_head *entry;
-       int stop_flags;
 
        if (q->last_merge == rq)
                q->last_merge = NULL;
@@ -362,7 +361,6 @@ void elv_dispatch_sort(struct request_queue *q, struct request *rq)
        q->nr_sorted--;
 
        boundary = q->end_sector;
-       stop_flags = REQ_SOFTBARRIER | REQ_STARTED;
        list_for_each_prev(entry, &q->queue_head) {
                struct request *pos = list_entry_rq(entry);
 
@@ -370,7 +368,7 @@ void elv_dispatch_sort(struct request_queue *q, struct request *rq)
                        break;
                if (rq_data_dir(rq) != rq_data_dir(pos))
                        break;
-               if (pos->cmd_flags & stop_flags)
+               if (pos->rq_flags & (RQF_STARTED | RQF_SOFTBARRIER))
                        break;
                if (blk_rq_pos(rq) >= boundary) {
                        if (blk_rq_pos(pos) < boundary)
@@ -510,7 +508,7 @@ void elv_merge_requests(struct request_queue *q, struct request *rq,
                             struct request *next)
 {
        struct elevator_queue *e = q->elevator;
-       const int next_sorted = next->cmd_flags & REQ_SORTED;
+       const int next_sorted = next->rq_flags & RQF_SORTED;
 
        if (next_sorted && e->type->ops.elevator_merge_req_fn)
                e->type->ops.elevator_merge_req_fn(q, rq, next);
@@ -537,13 +535,13 @@ void elv_bio_merged(struct request_queue *q, struct request *rq,
 #ifdef CONFIG_PM
 static void blk_pm_requeue_request(struct request *rq)
 {
-       if (rq->q->dev && !(rq->cmd_flags & REQ_PM))
+       if (rq->q->dev && !(rq->rq_flags & RQF_PM))
                rq->q->nr_pending--;
 }
 
 static void blk_pm_add_request(struct request_queue *q, struct request *rq)
 {
-       if (q->dev && !(rq->cmd_flags & REQ_PM) && q->nr_pending++ == 0 &&
+       if (q->dev && !(rq->rq_flags & RQF_PM) && q->nr_pending++ == 0 &&
            (q->rpm_status == RPM_SUSPENDED || q->rpm_status == RPM_SUSPENDING))
                pm_request_resume(q->dev);
 }
@@ -563,11 +561,11 @@ void elv_requeue_request(struct request_queue *q, struct request *rq)
         */
        if (blk_account_rq(rq)) {
                q->in_flight[rq_is_sync(rq)]--;
-               if (rq->cmd_flags & REQ_SORTED)
+               if (rq->rq_flags & RQF_SORTED)
                        elv_deactivate_rq(q, rq);
        }
 
-       rq->cmd_flags &= ~REQ_STARTED;
+       rq->rq_flags &= ~RQF_STARTED;
 
        blk_pm_requeue_request(rq);
 
@@ -597,13 +595,13 @@ void __elv_add_request(struct request_queue *q, struct request *rq, int where)
 
        rq->q = q;
 
-       if (rq->cmd_flags & REQ_SOFTBARRIER) {
+       if (rq->rq_flags & RQF_SOFTBARRIER) {
                /* barriers are scheduling boundary, update end_sector */
                if (rq->cmd_type == REQ_TYPE_FS) {
                        q->end_sector = rq_end_sector(rq);
                        q->boundary_rq = rq;
                }
-       } else if (!(rq->cmd_flags & REQ_ELVPRIV) &&
+       } else if (!(rq->rq_flags & RQF_ELVPRIV) &&
                    (where == ELEVATOR_INSERT_SORT ||
                     where == ELEVATOR_INSERT_SORT_MERGE))
                where = ELEVATOR_INSERT_BACK;
@@ -611,12 +609,12 @@ void __elv_add_request(struct request_queue *q, struct request *rq, int where)
        switch (where) {
        case ELEVATOR_INSERT_REQUEUE:
        case ELEVATOR_INSERT_FRONT:
-               rq->cmd_flags |= REQ_SOFTBARRIER;
+               rq->rq_flags |= RQF_SOFTBARRIER;
                list_add(&rq->queuelist, &q->queue_head);
                break;
 
        case ELEVATOR_INSERT_BACK:
-               rq->cmd_flags |= REQ_SOFTBARRIER;
+               rq->rq_flags |= RQF_SOFTBARRIER;
                elv_drain_elevator(q);
                list_add_tail(&rq->queuelist, &q->queue_head);
                /*
@@ -642,7 +640,7 @@ void __elv_add_request(struct request_queue *q, struct request *rq, int where)
                        break;
        case ELEVATOR_INSERT_SORT:
                BUG_ON(rq->cmd_type != REQ_TYPE_FS);
-               rq->cmd_flags |= REQ_SORTED;
+               rq->rq_flags |= RQF_SORTED;
                q->nr_sorted++;
                if (rq_mergeable(rq)) {
                        elv_rqhash_add(q, rq);
@@ -659,7 +657,7 @@ void __elv_add_request(struct request_queue *q, struct request *rq, int where)
                break;
 
        case ELEVATOR_INSERT_FLUSH:
-               rq->cmd_flags |= REQ_SOFTBARRIER;
+               rq->rq_flags |= RQF_SOFTBARRIER;
                blk_insert_flush(rq);
                break;
        default:
@@ -716,12 +714,12 @@ void elv_put_request(struct request_queue *q, struct request *rq)
                e->type->ops.elevator_put_req_fn(rq);
 }
 
-int elv_may_queue(struct request_queue *q, int op, int op_flags)
+int elv_may_queue(struct request_queue *q, unsigned int op)
 {
        struct elevator_queue *e = q->elevator;
 
        if (e->type->ops.elevator_may_queue_fn)
-               return e->type->ops.elevator_may_queue_fn(q, op, op_flags);
+               return e->type->ops.elevator_may_queue_fn(q, op);
 
        return ELV_MQUEUE_MAY;
 }
@@ -735,7 +733,7 @@ void elv_completed_request(struct request_queue *q, struct request *rq)
         */
        if (blk_account_rq(rq)) {
                q->in_flight[rq_is_sync(rq)]--;
-               if ((rq->cmd_flags & REQ_SORTED) &&
+               if ((rq->rq_flags & RQF_SORTED) &&
                    e->type->ops.elevator_completed_req_fn)
                        e->type->ops.elevator_completed_req_fn(q, rq);
        }