lkml.org 
[lkml]   [2008]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [dm-devel] Re: [RFC][PATCH 0/10] I/O context inheritance
From
Hi,

> > On Tue, Apr 22 2008, Hirokazu Takahashi wrote:
> > > Hi,
> > >
> > > Sorry, these patches are for linux-2.6.25.
> > >
> > > > This series of patches make the block I/O layer and the I/O schedulers
> > > > be able to determine the right io_context of every I/O.
> > > >
> > > > The current implementation of the block I/O layer and the I/O schedulers
> > > > assume that the current process is the one which issued the given I/O,
> > > > then use the io_context of this process to control the I/O.
> > > > But this assumption isn't quite right because several kernel threads
> > > > will handle I/O requests on behalf of the processes which originated them.
> > > > This often happens when you want to use device mapper modules.
> > > >
> > > > The patches make every bio has a pointer to an io_context, which will
> > > > be set when it is allocated or cloned. So it makes it possible to find
> > > > the right io_context from any bio at any place.
> > > >
> > > > I'm waiting for your comments.
> >
> > Can you give a brief summary of what you need this stuff for?
> >
>
> I am not sure if this the intended application, but I have been
> looking at supporting ionice over software-raid and this series seems
> like a necessary first step.

Yes, the intention is to make ionice be able to work correctly over
device mapper modules such as software-raid and the multipath driver.
This mechanism is needed since quite a few device mapper modules have
kernel threads, including workqueues, handle I/O requests.

And I also have a plan to use this new feature for block I/O bandwidth
control based on cgroup with some enhancement. With this feature, we
can also trace the iocontext of the process or cgroup which made
a certain page dirtied.


Thank you,
Hirokazu Takahashi.


\
 
 \ /
  Last update: 2008-04-23 05:29    [W:0.046 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site