Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1191328 > unrolled thread
| Started by | Tahsin Erdogan <tahsin@google.com> |
|---|---|
| First post | 2015-07-23 23:30 +0200 |
| Last post | 2015-07-30 07:50 +0200 |
| Articles | 2 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH] noop-iosched: do not attempt to sort requests Tahsin Erdogan <tahsin@google.com> - 2015-07-23 23:30 +0200
Re: [PATCH] noop-iosched: do not attempt to sort requests Tahsin Erdogan <tahsin@google.com> - 2015-07-30 07:50 +0200
| From | Tahsin Erdogan <tahsin@google.com> |
|---|---|
| Date | 2015-07-23 23:30 +0200 |
| Subject | [PATCH] noop-iosched: do not attempt to sort requests |
| Message-ID | <pPwdY-21o-17@gated-at.bofh.it> |
Noop scheduler currently dispatches a request by calling elv_dispatch_sort(). In practice, sorting does not occur because __elv_next_request() asks the io scheduler to dispatch a request only when elevator queue is empty. Also, not reordering requests seems more appropriate for noop. This change makes the behavior more explicit. Reviewed-by: Nauman Rafique <nauman@google.com> Signed-off-by: Tahsin Erdogan <tahsin@google.com> --- block/Kconfig.iosched | 8 ++++---- block/noop-iosched.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/block/Kconfig.iosched b/block/Kconfig.iosched index 421bef9..b9e42f8 100644 --- a/block/Kconfig.iosched +++ b/block/Kconfig.iosched @@ -7,10 +7,10 @@ config IOSCHED_NOOP default y ---help--- The no-op I/O scheduler is a minimal scheduler that does basic merging - and sorting. Its main uses include non-disk based block devices like - memory devices, and specialised software or hardware environments - that do their own scheduling and require only minimal assistance from - the kernel. + only. Its main uses include non-disk based block devices like memory + devices, and specialised software or hardware environments that do + their own scheduling and require only minimal assistance from the + kernel. config IOSCHED_DEADLINE tristate "Deadline I/O scheduler" diff --git a/block/noop-iosched.c b/block/noop-iosched.c index 3de89d4..f0fec14 100644 --- a/block/noop-iosched.c +++ b/block/noop-iosched.c @@ -26,7 +26,7 @@ static int noop_dispatch(struct request_queue *q, int force) struct request *rq; rq = list_entry(nd->queue.next, struct request, queuelist); list_del_init(&rq->queuelist); - elv_dispatch_sort(q, rq); + elv_dispatch_add_tail(q, rq); return 1; } return 0; -- 2.4.3.573.g4eafbef -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Tahsin Erdogan <tahsin@google.com> |
|---|---|
| Date | 2015-07-30 07:50 +0200 |
| Message-ID | <pROT8-5YY-7@gated-at.bofh.it> |
| In reply to | #1191328 |
Hi Jens, did you get a chance to take a look at this patch? On Thu, Jul 23, 2015 at 2:20 PM, Tahsin Erdogan <tahsin@google.com> wrote: > Noop scheduler currently dispatches a request by calling > elv_dispatch_sort(). In practice, sorting does not occur because > __elv_next_request() asks the io scheduler to dispatch a request > only when elevator queue is empty. > > Also, not reordering requests seems more appropriate for noop. This > change makes the behavior more explicit. > > Reviewed-by: Nauman Rafique <nauman@google.com> > Signed-off-by: Tahsin Erdogan <tahsin@google.com> > --- > block/Kconfig.iosched | 8 ++++---- > block/noop-iosched.c | 2 +- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/block/Kconfig.iosched b/block/Kconfig.iosched > index 421bef9..b9e42f8 100644 > --- a/block/Kconfig.iosched > +++ b/block/Kconfig.iosched > @@ -7,10 +7,10 @@ config IOSCHED_NOOP > default y > ---help--- > The no-op I/O scheduler is a minimal scheduler that does basic merging > - and sorting. Its main uses include non-disk based block devices like > - memory devices, and specialised software or hardware environments > - that do their own scheduling and require only minimal assistance from > - the kernel. > + only. Its main uses include non-disk based block devices like memory > + devices, and specialised software or hardware environments that do > + their own scheduling and require only minimal assistance from the > + kernel. > > config IOSCHED_DEADLINE > tristate "Deadline I/O scheduler" > diff --git a/block/noop-iosched.c b/block/noop-iosched.c > index 3de89d4..f0fec14 100644 > --- a/block/noop-iosched.c > +++ b/block/noop-iosched.c > @@ -26,7 +26,7 @@ static int noop_dispatch(struct request_queue *q, int force) > struct request *rq; > rq = list_entry(nd->queue.next, struct request, queuelist); > list_del_init(&rq->queuelist); > - elv_dispatch_sort(q, rq); > + elv_dispatch_add_tail(q, rq); > return 1; > } > return 0; > -- > 2.4.3.573.g4eafbef > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web