lkml.org 
[lkml]   [2009]   [Oct]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 18/45] writeback: introduce wait queue for balance_dirty_pages()
From
Date
On Thu, 2009-10-08 at 10:01 +0900, KAMEZAWA Hiroyuki wrote:

> May I ask a question ? (maybe not directly related to this patch itself, sorry)
>
> Recent works as "writeback: switch to per-bdi threads for flushing data"
> removed congestion_wait() from balance_dirty_pages() and added
> schedule_timeout_interruptible().
>
> And this one replaces it with wake_up+wait_queue.
>
> IIUC, "iowait" cpustat data was calculated by runqueue->nr_iowait as
> == kernel/schec.c
> void account_idle_time(cputime_t cputime)
> {
> struct cpu_usage_stat *cpustat = &kstat_this_cpu.cpustat;
> cputime64_t cputime64 = cputime_to_cputime64(cputime);
> struct rq *rq = this_rq();
>
> if (atomic_read(&rq->nr_iowait) > 0)
> cpustat->iowait = cputime64_add(cpustat->iowait, cputime64);
> else
> cpustat->idle = cputime64_add(cpustat->idle, cputime64);
> }
> ==
> Then, for showing "cpu is in iowait", runqueue->nr_iowait should be modified
> at some places. In old kernel, congestion_wait() at el did that by calling
> io_schedule_timeout().
>
> How this runqueue->nr_iowait is handled now ?

Ah, I think you've got a good point, we need a io_schedule() there.





\
 
 \ /
  Last update: 2009-10-08 10:13    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site