Re: [PATCH] cfq: get rid of cfqq hash

2007-04-25 Thread Jens Axboe
On Wed, Apr 25 2007, Jens Axboe wrote: > On Wed, Apr 25 2007, Vasily Tarasov wrote: > > >> @@ -1806,7 +1765,11 @@ static int cfq_may_queue(request_queue_t > > >> * so just lookup a possibly existing queue, or return 'may > > >> queue' > > >> * if that fails > > >> */

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-25 Thread Jens Axboe
On Wed, Apr 25 2007, Vasily Tarasov wrote: > >> @@ -1806,7 +1765,11 @@ static int cfq_may_queue(request_queue_t > >> * so just lookup a possibly existing queue, or return 'may queue' > >> * if that fails > >> */ > >> - cfqq = cfq_find_cfq_hash(cfqd, key, tsk->ioprio); > >> + cic = cfq

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-25 Thread Vasily Tarasov
>> @@ -1806,7 +1765,11 @@ static int cfq_may_queue(request_queue_t >> * so just lookup a possibly existing queue, or return 'may queue' >> * if that fails >> */ >> -cfqq = cfq_find_cfq_hash(cfqd, key, tsk->ioprio); >> +cic = cfq_get_io_context_noalloc(cfqd, tsk); >> +i

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-25 Thread Vasily Tarasov
From: Vasily Tarasov <[EMAIL PROTECTED]> >> -if (key != CFQ_KEY_ASYNC) >> +if (!is_sync) >> cfq_mark_cfqq_idle_window(cfqq); >> +else >> +cfq_mark_cfqq_sync(cfqq); > > Woops, should be > > if (is_sync) { >

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-25 Thread Jens Axboe
On Wed, Apr 25 2007, Jens Axboe wrote: > On Tue, Apr 24 2007, Vasily Tarasov wrote: > > @@ -1806,7 +1765,11 @@ static int cfq_may_queue(request_queue_t > > * so just lookup a possibly existing queue, or return 'may queue' > > * if that fails > > */ > > - cfqq = cfq_find_cfq_hash(cf

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-25 Thread Jens Axboe
On Tue, Apr 24 2007, Vasily Tarasov wrote: > @@ -1806,7 +1765,11 @@ static int cfq_may_queue(request_queue_t >* so just lookup a possibly existing queue, or return 'may queue' >* if that fails >*/ > - cfqq = cfq_find_cfq_hash(cfqd, key, tsk->ioprio); > + cic = cfq_ge

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Jens Axboe
On Tue, Apr 24 2007, Jens Axboe wrote: > On Tue, Apr 24 2007, Jens Axboe wrote: > > - if (key != CFQ_KEY_ASYNC) > > + if (!is_sync) > > cfq_mark_cfqq_idle_window(cfqq); > > + else > > + cfq_mark_cfqq_sync(cfqq); > > Woops, should

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Jens Axboe
On Tue, Apr 24 2007, Jens Axboe wrote: > - if (key != CFQ_KEY_ASYNC) > + if (!is_sync) > cfq_mark_cfqq_idle_window(cfqq); > + else > + cfq_mark_cfqq_sync(cfqq); Woops, should be if (is_sync) { cf

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Jens Axboe
On Tue, Apr 24 2007, Jens Axboe wrote: > On Tue, Apr 24 2007, Vasily Tarasov wrote: > > From: Vasily Tarasov <[EMAIL PROTECTED]> > > > > cfq hash is no more necessary. We always can get cfqq from io context. > > cfq_get_io_context_noalloc() function is introduced, because we don't want > > to >

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Jens Axboe
On Tue, Apr 24 2007, Vasily Tarasov wrote: > From: Vasily Tarasov <[EMAIL PROTECTED]> > > cfq hash is no more necessary. We always can get cfqq from io context. > cfq_get_io_context_noalloc() function is introduced, because we don't want to > allocate cic on merging and checking may_queue. > In o

[PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Vasily Tarasov
From: Vasily Tarasov <[EMAIL PROTECTED]> cfq hash is no more necessary. We always can get cfqq from io context. cfq_get_io_context_noalloc() function is introduced, because we don't want to allocate cic on merging and checking may_queue. In order to identify sync queue we've used hash key = CFQ_K

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Vasily Tarasov
>> From: Vasily Tarasov <[EMAIL PROTECTED]> >> >> cfq hash is no more necessary. We always can get cfqq from io context. >> cfq_get_io_context_noalloc() function is introduced, because we don't want >> to >> allocate cic on merging and checking may_queue. >> In order to identify sync queue we've

Re: [PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Jens Axboe
On Tue, Apr 24 2007, Vasily Tarasov wrote: > From: Vasily Tarasov <[EMAIL PROTECTED]> > > cfq hash is no more necessary. We always can get cfqq from io context. > cfq_get_io_context_noalloc() function is introduced, because we don't want to > allocate cic on merging and checking may_queue. > In o

[PATCH] cfq: get rid of cfqq hash

2007-04-24 Thread Vasily Tarasov
From: Vasily Tarasov <[EMAIL PROTECTED]> cfq hash is no more necessary. We always can get cfqq from io context. cfq_get_io_context_noalloc() function is introduced, because we don't want to allocate cic on merging and checking may_queue. In order to identify sync queue we've used hash key = CFQ_K