[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[dm-devel] Re: [PATCH 22/24] io-controller: Per io group bdi congestion interface
- From: Gui Jianfeng <guijianfeng cn fujitsu com>
- To: Vivek Goyal <vgoyal redhat com>
- Cc: dhaval linux vnet ibm com, peterz infradead org, dm-devel redhat com, dpshah google com, jens axboe oracle com, agk redhat com, balbir linux vnet ibm com, paolo valente unimore it, fernando oss ntt co jp, mikew google com, jmoyer redhat com, nauman google com, m-ikeda ds jp nec com, lizf cn fujitsu com, fchecconi gmail com, s-uchida ap jp nec com, containers lists linux-foundation org, linux-kernel vger kernel org, akpm linux-foundation org, righi andrea gmail com
- Subject: [dm-devel] Re: [PATCH 22/24] io-controller: Per io group bdi congestion interface
- Date: Sat, 08 Aug 2009 16:14:51 +0800
Vivek Goyal wrote:
...
> +/* Set io group congestion on and off thresholds */
> +void elv_io_group_congestion_threshold(struct request_queue *q,
> + struct io_group *iog)
> +{
> + int nr;
> +
> + nr = q->nr_group_requests - (q->nr_group_requests / 8) + 1;
> + if (nr > q->nr_group_requests)
> + nr = q->nr_group_requests;
> + iog->nr_congestion_on = nr;
> +
> + nr = q->nr_group_requests - (q->nr_group_requests / 8)
> + - (q->nr_group_requests / 16) - 1;
> + if (nr < 1)
> + nr = 1;
> + iog->nr_congestion_off = nr;
Vivek,
Since we determine whether io group is congenssed or not just by checking
iog->nr_congestion_on, we can get rid of iog->nr_congestion_off here.
Signed-off-by: Gui Jianfeng <guijianfeng cn fujitsu com>
---
block/elevator-fq.c | 6 ------
block/elevator-fq.h | 3 +--
2 files changed, 1 insertions(+), 8 deletions(-)
diff --git a/block/elevator-fq.c b/block/elevator-fq.c
index 66b10eb..e73da31 100644
--- a/block/elevator-fq.c
+++ b/block/elevator-fq.c
@@ -1267,12 +1267,6 @@ void elv_io_group_congestion_threshold(struct request_queue *q,
if (nr > q->nr_group_requests)
nr = q->nr_group_requests;
iog->nr_congestion_on = nr;
-
- nr = q->nr_group_requests - (q->nr_group_requests / 8)
- - (q->nr_group_requests / 16) - 1;
- if (nr < 1)
- nr = 1;
- iog->nr_congestion_off = nr;
}
static inline int elv_is_iog_congested(struct request_queue *q,
diff --git a/block/elevator-fq.h b/block/elevator-fq.h
index 0581e55..2815279 100644
--- a/block/elevator-fq.h
+++ b/block/elevator-fq.h
@@ -266,9 +266,8 @@ struct io_group {
/* Single ioq per group, used for noop, deadline, anticipatory */
struct io_queue *ioq;
- /* io group congestion on and off threshold for request descriptors */
+ /* io group congestion on threshold for request descriptors */
unsigned int nr_congestion_on;
- unsigned int nr_congestion_off;
/* request list associated with the group */
struct request_list rl;
--
1.5.4.rc3
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]