lkml.org 
[lkml]   [2008]   [Jan]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] cgroup: limit block I/O bandwidth
Andrea Righi wrote:
> Balbir Singh wrote:
>> * Andrea Righi <righiandr@users.sourceforge.net> [2008-01-23 16:23:59]:
>>
>>> Probably tracking who dirtied the pages would be the best approach, but
>>> we want also to reduce the overhead of this tracking. So, we should find
>>> a smart way to track which cgroup dirtied the pages and then only when
>>> the i/o scheduler dispatches the write requests of those pages, account
>>> the i/o operations to the opportune cgroup. In this way throttling could
>>> be done probably in __set_page_dirty() as well.
>>>
>> I think the OpenVZ controller works that way.
>
> Well... looking at the code it seems that OpenVZ doesn't use this
> strategy, instead performs UBC-based I/O accounting looking at the

We do track the task (well - the beancounter) who made the page
dirty and then use this context for async write scheduling.

> __set_page_dirty*() for writes and submit_bio() for reads. Then,
> independently from accounting data, it uses per-UBC i/o priority model
> that is mapped directly on the CFQ i/o priority model.

Vasisly Tarasov (out I/O guru ;)) has already prepared an RFC patchset
for Jens with group scheduler (for sync requests only) and is going to
send it this or next week.

> -Andrea
>



\
 
 \ /
  Last update: 2008-01-24 10:09    [W:0.066 / U:0.808 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site