Commit 22f17952 authored by Josef Bacik's avatar Josef Bacik Committed by Jens Axboe

blk-rq-qos: make depth comparisons unsigned

With the change to use UINT_MAX I broke the depth check as any value of
inflight (ie 0) would be less than (int)UINT_MAX.  Fix this by changing
everything to unsigned int to match the depth.
Signed-off-by: default avatarJosef Bacik <josef@toxicpanda.com>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 636620b6
...@@ -4,12 +4,12 @@ ...@@ -4,12 +4,12 @@
* Increment 'v', if 'v' is below 'below'. Returns true if we succeeded, * Increment 'v', if 'v' is below 'below'. Returns true if we succeeded,
* false if 'v' + 1 would be bigger than 'below'. * false if 'v' + 1 would be bigger than 'below'.
*/ */
static bool atomic_inc_below(atomic_t *v, int below) static bool atomic_inc_below(atomic_t *v, unsigned int below)
{ {
int cur = atomic_read(v); unsigned int cur = atomic_read(v);
for (;;) { for (;;) {
int old; unsigned int old;
if (cur >= below) if (cur >= below)
return false; return false;
...@@ -22,7 +22,7 @@ static bool atomic_inc_below(atomic_t *v, int below) ...@@ -22,7 +22,7 @@ static bool atomic_inc_below(atomic_t *v, int below)
return true; return true;
} }
bool rq_wait_inc_below(struct rq_wait *rq_wait, int limit) bool rq_wait_inc_below(struct rq_wait *rq_wait, unsigned int limit)
{ {
return atomic_inc_below(&rq_wait->inflight, limit); return atomic_inc_below(&rq_wait->inflight, limit);
} }
......
...@@ -93,7 +93,7 @@ static inline void rq_qos_del(struct request_queue *q, struct rq_qos *rqos) ...@@ -93,7 +93,7 @@ static inline void rq_qos_del(struct request_queue *q, struct rq_qos *rqos)
} }
} }
bool rq_wait_inc_below(struct rq_wait *rq_wait, int limit); bool rq_wait_inc_below(struct rq_wait *rq_wait, unsigned int limit);
void rq_depth_scale_up(struct rq_depth *rqd); void rq_depth_scale_up(struct rq_depth *rqd);
void rq_depth_scale_down(struct rq_depth *rqd, bool hard_throttle); void rq_depth_scale_down(struct rq_depth *rqd, bool hard_throttle);
bool rq_depth_calc_max_depth(struct rq_depth *rqd); bool rq_depth_calc_max_depth(struct rq_depth *rqd);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment