Re: [PATCH] cfq: wrong sync writes detection [message #8937 is a reply to message #8935] |
Mon, 11 December 2006 16:07  |
Jens Axboe
Messages: 30 Registered: October 2006
|
Member |
|
|
On Mon, Dec 11 2006, Vasily Tarasov wrote:
> CFQ I/O scheduler does the following actions to
> find out whether the request is sync:
>
> rw = rq_data_dir(rq); => possible values for rw are 0 or 1
>
> static inline pid_t cfq_queue_pid(struct task_struct *task, int rw)
> {
> if (rw == READ || rw == WRITE_SYNC) => second condition is always false
> return task->pid;
>
> return CFQ_KEY_ASYNC;
> }
>
> The following patch fixes the bug by adding sync parameter,
> wich is obtained through bio_sync macros.
Good catch! Applied.
--
Jens Axboe
|
|
|