From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Daniel Phillips <phillips@istop.com>
Cc: Andrew Morton <akpm@osdl.org>,
lmb@suse.de, arjanv@redhat.com, sdake@mvista.com,
teigland@redhat.com, linux-kernel@vger.kernel.org
Subject: Re: [ANNOUNCE] Minneapolis Cluster Summit, July 29-30
Date: Tue, 27 Jul 2004 14:07:45 +1000 [thread overview]
Message-ID: <4105D511.9030207@yahoo.com.au> (raw)
In-Reply-To: <200407262331.44176.phillips@istop.com>
Daniel Phillips wrote:
>On Monday 12 July 2004 22:31, Nick Piggin wrote:
>
>>
>>Search for rt_task in mm/page_alloc.c
>>
>
>Ah, interesting idea: realtime tasks get to dip into the PF_MEMALLOC reserve,
>until it gets down to some threshold, then they have to give up and wait like
>any other unwashed nobody of a process. _But_ if there's a user space
>process sitting in the writeout path and some other realtime process eats the
>entire realtime reserve, everything can still grind to a halt.
>
>So it's interesting for realtime, but does not solve the userspace PF_MEMALLOC
>inversion.
>
>
Not the rt_task thing, because yes, you can have other RT tasks that aren't
small and bounded that screw up your reserves.
But a PF_MEMALLOC userspace task is still useful.
>>>>A privileged syscall which allows a task to mark itself as one which
>>>>cleans memory would make sense.
>>>>
>>>For now we can do it with an ioctl, and we pretty much have to do it for
>>>pvmove. But that's when user space drives the kernel by syscalls; there
>>>is also the nasty (and common) case where the kernel needs userspace to
>>>do something for it while it's in PF_MEMALLOC. I'm playing with ideas
>>>there, but nothing I'm proud of yet. For now I see the in-kernel
>>>approach as the conservative one, for anything that could possibly find
>>>itself on the VM writeout path.
>>>
>>You'd obviously want to make the PF_MEMALLOC task as tight as possible,
>>and running mlocked:
>>
>
>Not just tight, but bounded. And tight too, of course.
>
>
>>I don't particularly see why such a task would be any safer in-kernel.
>>
>
>The PF_MEMALLOC flag is inherited down a call chain, not across a pipe or
>similar IPC to user space.
>
>
This is no different in kernel of course. You would have to think about
which threads need the flag and which do not. Even better, you might
aquire and drop the flag only when required. I can't see any obvious
problems you would run into.
>>PF_MEMALLOC tasks won't enter page reclaim at all. The only way they
>>will reach the writeout path is if you are write(2)ing stuff (you may
>>hit synch writeout).
>>
>
>That's the problem.
>
>
Well I don't think it would be a problem to get the write throttling path
to ignore PF_MEMALLOC tasks if that is what you need. Again, this shouldn't
be any different to in kernel code.
next prev parent reply other threads:[~2004-07-27 4:07 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-07-05 6:09 [ANNOUNCE] Minneapolis Cluster Summit, July 29-30 Daniel Phillips
2004-07-05 15:09 ` Christoph Hellwig
2004-07-05 18:42 ` Daniel Phillips
2004-07-05 19:08 ` Chris Friesen
2004-07-05 20:29 ` Daniel Phillips
2004-07-07 22:55 ` Steven Dake
2004-07-08 1:30 ` Daniel Phillips
2004-07-05 19:12 ` Lars Marowsky-Bree
2004-07-05 20:27 ` Daniel Phillips
2004-07-06 7:34 ` Lars Marowsky-Bree
2004-07-06 21:34 ` Daniel Phillips
2004-07-07 18:16 ` Lars Marowsky-Bree
2004-07-08 1:14 ` Daniel Phillips
2004-07-08 9:10 ` Lars Marowsky-Bree
2004-07-08 10:53 ` David Teigland
2004-07-08 14:14 ` Chris Friesen
2004-07-08 16:06 ` David Teigland
2004-07-08 18:22 ` Daniel Phillips
2004-07-08 19:41 ` Steven Dake
2004-07-10 4:58 ` David Teigland
2004-07-10 4:58 ` Daniel Phillips
2004-07-10 17:59 ` Steven Dake
2004-07-10 20:57 ` Daniel Phillips
2004-07-10 23:24 ` Steven Dake
2004-07-11 19:44 ` Daniel Phillips
2004-07-11 21:06 ` Lars Marowsky-Bree
2004-07-12 6:58 ` Arjan van de Ven
2004-07-12 10:05 ` Lars Marowsky-Bree
2004-07-12 10:11 ` Arjan van de Ven
2004-07-12 10:21 ` Lars Marowsky-Bree
2004-07-12 10:28 ` Arjan van de Ven
2004-07-12 11:50 ` Lars Marowsky-Bree
2004-07-12 12:01 ` Arjan van de Ven
2004-07-12 13:13 ` Lars Marowsky-Bree
2004-07-12 13:40 ` Nick Piggin
2004-07-12 20:54 ` Andrew Morton
2004-07-13 2:19 ` Daniel Phillips
2004-07-13 2:31 ` Nick Piggin
2004-07-27 3:31 ` Daniel Phillips
2004-07-27 4:07 ` Nick Piggin [this message]
2004-07-27 5:57 ` Daniel Phillips
2004-07-14 12:19 ` Pavel Machek
2004-07-15 2:19 ` Nick Piggin
2004-07-15 12:03 ` Marcelo Tosatti
2004-07-14 8:32 ` Pavel Machek
2004-07-12 4:08 ` Steven Dake
2004-07-12 4:23 ` Daniel Phillips
2004-07-12 18:21 ` Steven Dake
2004-07-12 19:54 ` Daniel Phillips
2004-07-13 20:06 ` Pavel Machek
2004-07-12 10:14 ` Lars Marowsky-Bree
[not found] <fa.io9lp90.1c02foo@ifi.uio.no>
[not found] ` <fa.go9f063.1i72joh@ifi.uio.no>
2004-07-06 6:39 ` Aneesh Kumar K.V
-- strict thread matches above, loose matches on Subject: below --
2004-07-10 14:58 James Bottomley
2004-07-10 16:04 ` David Teigland
2004-07-10 16:26 ` James Bottomley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4105D511.9030207@yahoo.com.au \
--to=nickpiggin@yahoo.com.au \
--cc=akpm@osdl.org \
--cc=arjanv@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lmb@suse.de \
--cc=phillips@istop.com \
--cc=sdake@mvista.com \
--cc=teigland@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox