Skip to content

Commit cb78b28

Browse files
Jens AxboeJens Axboe
Jens Axboe
authored and
Jens Axboe
committed
[PATCH] Drop useless bio passing in may_queue/set_request API
It's not needed for anything, so kill the bio passing. Signed-off-by: Jens Axboe <axboe@suse.de>
1 parent cdd6026 commit cb78b28

File tree

5 files changed

+15
-18
lines changed

5 files changed

+15
-18
lines changed

block/as-iosched.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -1284,7 +1284,7 @@ static void as_work_handler(void *data)
12841284
spin_unlock_irqrestore(q->queue_lock, flags);
12851285
}
12861286

1287-
static int as_may_queue(request_queue_t *q, int rw, struct bio *bio)
1287+
static int as_may_queue(request_queue_t *q, int rw)
12881288
{
12891289
int ret = ELV_MQUEUE_MAY;
12901290
struct as_data *ad = q->elevator->elevator_data;

block/cfq-iosched.c

+2-3
Original file line numberDiff line numberDiff line change
@@ -1752,7 +1752,7 @@ __cfq_may_queue(struct cfq_data *cfqd, struct cfq_queue *cfqq,
17521752
return ELV_MQUEUE_MAY;
17531753
}
17541754

1755-
static int cfq_may_queue(request_queue_t *q, int rw, struct bio *bio)
1755+
static int cfq_may_queue(request_queue_t *q, int rw)
17561756
{
17571757
struct cfq_data *cfqd = q->elevator->elevator_data;
17581758
struct task_struct *tsk = current;
@@ -1817,8 +1817,7 @@ static void cfq_put_request(request_queue_t *q, struct request *rq)
18171817
* Allocate cfq data structures associated with this request.
18181818
*/
18191819
static int
1820-
cfq_set_request(request_queue_t *q, struct request *rq, struct bio *bio,
1821-
gfp_t gfp_mask)
1820+
cfq_set_request(request_queue_t *q, struct request *rq, gfp_t gfp_mask)
18221821
{
18231822
struct cfq_data *cfqd = q->elevator->elevator_data;
18241823
struct task_struct *tsk = current;

block/elevator.c

+4-5
Original file line numberDiff line numberDiff line change
@@ -796,13 +796,12 @@ struct request *elv_former_request(request_queue_t *q, struct request *rq)
796796
return NULL;
797797
}
798798

799-
int elv_set_request(request_queue_t *q, struct request *rq, struct bio *bio,
800-
gfp_t gfp_mask)
799+
int elv_set_request(request_queue_t *q, struct request *rq, gfp_t gfp_mask)
801800
{
802801
elevator_t *e = q->elevator;
803802

804803
if (e->ops->elevator_set_req_fn)
805-
return e->ops->elevator_set_req_fn(q, rq, bio, gfp_mask);
804+
return e->ops->elevator_set_req_fn(q, rq, gfp_mask);
806805

807806
rq->elevator_private = NULL;
808807
return 0;
@@ -816,12 +815,12 @@ void elv_put_request(request_queue_t *q, struct request *rq)
816815
e->ops->elevator_put_req_fn(q, rq);
817816
}
818817

819-
int elv_may_queue(request_queue_t *q, int rw, struct bio *bio)
818+
int elv_may_queue(request_queue_t *q, int rw)
820819
{
821820
elevator_t *e = q->elevator;
822821

823822
if (e->ops->elevator_may_queue_fn)
824-
return e->ops->elevator_may_queue_fn(q, rw, bio);
823+
return e->ops->elevator_may_queue_fn(q, rw);
825824

826825
return ELV_MQUEUE_MAY;
827826
}

block/ll_rw_blk.c

+4-5
Original file line numberDiff line numberDiff line change
@@ -2003,8 +2003,7 @@ static inline void blk_free_request(request_queue_t *q, struct request *rq)
20032003
}
20042004

20052005
static inline struct request *
2006-
blk_alloc_request(request_queue_t *q, int rw, struct bio *bio,
2007-
int priv, gfp_t gfp_mask)
2006+
blk_alloc_request(request_queue_t *q, int rw, int priv, gfp_t gfp_mask)
20082007
{
20092008
struct request *rq = mempool_alloc(q->rq.rq_pool, gfp_mask);
20102009

@@ -2018,7 +2017,7 @@ blk_alloc_request(request_queue_t *q, int rw, struct bio *bio,
20182017
rq->cmd_flags = rw | REQ_ALLOCED;
20192018

20202019
if (priv) {
2021-
if (unlikely(elv_set_request(q, rq, bio, gfp_mask))) {
2020+
if (unlikely(elv_set_request(q, rq, gfp_mask))) {
20222021
mempool_free(rq, q->rq.rq_pool);
20232022
return NULL;
20242023
}
@@ -2109,7 +2108,7 @@ static struct request *get_request(request_queue_t *q, int rw, struct bio *bio,
21092108
struct io_context *ioc = NULL;
21102109
int may_queue, priv;
21112110

2112-
may_queue = elv_may_queue(q, rw, bio);
2111+
may_queue = elv_may_queue(q, rw);
21132112
if (may_queue == ELV_MQUEUE_NO)
21142113
goto rq_starved;
21152114

@@ -2157,7 +2156,7 @@ static struct request *get_request(request_queue_t *q, int rw, struct bio *bio,
21572156

21582157
spin_unlock_irq(q->queue_lock);
21592158

2160-
rq = blk_alloc_request(q, rw, bio, priv, gfp_mask);
2159+
rq = blk_alloc_request(q, rw, priv, gfp_mask);
21612160
if (unlikely(!rq)) {
21622161
/*
21632162
* Allocation failed presumably due to memory. Undo anything

include/linux/elevator.h

+4-4
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ typedef void (elevator_add_req_fn) (request_queue_t *, struct request *);
1414
typedef int (elevator_queue_empty_fn) (request_queue_t *);
1515
typedef struct request *(elevator_request_list_fn) (request_queue_t *, struct request *);
1616
typedef void (elevator_completed_req_fn) (request_queue_t *, struct request *);
17-
typedef int (elevator_may_queue_fn) (request_queue_t *, int, struct bio *);
17+
typedef int (elevator_may_queue_fn) (request_queue_t *, int);
1818

19-
typedef int (elevator_set_req_fn) (request_queue_t *, struct request *, struct bio *, gfp_t);
19+
typedef int (elevator_set_req_fn) (request_queue_t *, struct request *, gfp_t);
2020
typedef void (elevator_put_req_fn) (request_queue_t *, struct request *);
2121
typedef void (elevator_activate_req_fn) (request_queue_t *, struct request *);
2222
typedef void (elevator_deactivate_req_fn) (request_queue_t *, struct request *);
@@ -105,9 +105,9 @@ extern struct request *elv_former_request(request_queue_t *, struct request *);
105105
extern struct request *elv_latter_request(request_queue_t *, struct request *);
106106
extern int elv_register_queue(request_queue_t *q);
107107
extern void elv_unregister_queue(request_queue_t *q);
108-
extern int elv_may_queue(request_queue_t *, int, struct bio *);
108+
extern int elv_may_queue(request_queue_t *, int);
109109
extern void elv_completed_request(request_queue_t *, struct request *);
110-
extern int elv_set_request(request_queue_t *, struct request *, struct bio *, gfp_t);
110+
extern int elv_set_request(request_queue_t *, struct request *, gfp_t);
111111
extern void elv_put_request(request_queue_t *, struct request *);
112112

113113
/*

0 commit comments

Comments
 (0)