Re: [RFC][PATCH 2/7] RSS controller core

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Balbir Singh
Date: Tuesday, March 6, 2007 - 10:37 pm

Pavel Emelianov wrote:

The wording looks very familiar :-). It would be useful to add
"The reclaim logic is now container aware, when the container goes overlimit
the page reclaimer reclaims pages belonging to this container. If we are
unable to reclaim enough pages to satisfy the request, the process is
killed with an out of memory warning"


Yes, this is what I was planning to get to -- a per container LRU list.
But you have just one list, don't you need active and inactive lists?
When the global LRU is manipulated, shouldn't this list be updated as
well, so that reclaim will pick the best pages.


The return codes of the functions is a bit confusing, ideally
container_try_to_free_pages() should return 0 on success. Also
res_counter_charge() has a WARN_ON(1) if the limit is exceeded.
The system administrator can figure out the details from failcnt,
I suspect when the container is running close to it's limit,
dmesg will have too many WARNING messages.

How much memory do you try to reclaim in container_try_to_free_pages()?
With my patches, I was planning to export this knob to userspace with
a default value. This will help the administrator decide how much
of the working set/container LRU should be freed on reaching the limit.
I cannot find the definition of container_try_to_free_pages() in
this patch.




This is not good, it won't give us LRU behaviour which is
useful for determining which pages to free.


Which part of the working set are we pushing out, this looks like
we are using FIFO to determine which pages to reclaim. This needs
to be FIXED.


This would lead to LRU churning, I would recommend using list_splice_tail()
instead. Since this code has a lot in common with isolate_lru_pages, it
would be nice to reuse the code in vmscan.c

NOTE: Code duplication is a back door for subtle bugs and solving the same
issue twice :-)


I see that the charges are not migrated. Is that good?
If a user could find a way of migrating his/her task from
one container to another, it could create an issue with
the user's task taking up a big chunk of the RSS limit.

Can we migrate any task or just the thread group leader.
In my patches, I allowed migration of just the thread
group leader. Imagine if you have several threads, no
matter which container they belong to, their mm gets
charged (usage will not show up in the container's usage).
This could confuse the system administrator.



-- 
	Warm Regards,
	Balbir Singh
	Linux Technology Center
	IBM, ISTL
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC][PATCH 1/7] Resource counters, Pavel Emelianov, (Tue Mar 6, 7:49 am)
[RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Tue Mar 6, 7:55 am)
[RFC][PATCH 4/7] RSS accounting hooks over the code, Pavel Emelianov, (Tue Mar 6, 8:00 am)
Re: [RFC][PATCH 2/7] RSS controller core, Andrew Morton, (Tue Mar 6, 3:00 pm)
Re: [RFC][PATCH 1/7] Resource counters, Balbir Singh, (Tue Mar 6, 9:03 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Balbir Singh, (Tue Mar 6, 10:37 pm)
Re: [RFC][PATCH 1/7] Resource counters, Pavel Emelianov, (Wed Mar 7, 12:19 am)
Re: [RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Wed Mar 7, 12:27 am)
Re: [RFC][PATCH 1/7] Resource counters, Herbert Poetzl, (Fri Mar 9, 9:37 am)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Fri Mar 9, 9:48 am)
Re: [RFC][PATCH 1/7] Resource counters, Pavel Emelianov, (Sun Mar 11, 2:01 am)
Re: [RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Sun Mar 11, 2:08 am)
Re: [RFC][PATCH 2/7] RSS controller core, Kirill Korotaev, (Sun Mar 11, 5:26 am)
Re: [RFC][PATCH 2/7] RSS controller core, Andrew Morton, (Sun Mar 11, 5:51 am)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Sun Mar 11, 7:32 am)
Re: [RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Sun Mar 11, 8:04 am)
Re: [RFC][PATCH 2/7] RSS controller core, Balbir Singh, (Sun Mar 11, 8:51 am)
Re: [RFC][PATCH 1/7] Resource counters, Eric W. Biederman, (Sun Mar 11, 12:00 pm)
Re: [RFC][PATCH 3/7] Data structures changes for RSS accou ..., Eric W. Biederman, (Sun Mar 11, 12:13 pm)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Eric W. Biederman, (Sun Mar 11, 12:14 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Eric W. Biederman, (Sun Mar 11, 12:34 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Sun Mar 11, 5:41 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Sun Mar 11, 6:00 pm)
Re: [RFC][PATCH 1/7] Resource counters, Herbert Poetzl, (Sun Mar 11, 6:16 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Mon Mar 12, 1:31 am)
Re: [RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Mon Mar 12, 2:02 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Kirill Korotaev, (Mon Mar 12, 2:23 am)
Re: [RFC][PATCH 2/7] RSS controller core, Balbir Singh, (Mon Mar 12, 2:55 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Kirill Korotaev, (Mon Mar 12, 9:23 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Kirill Korotaev, (Mon Mar 12, 10:07 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Dave Hansen, (Mon Mar 12, 10:33 am)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Mon Mar 12, 11:42 am)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Mon Mar 12, 2:11 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Mon Mar 12, 3:41 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Mon Mar 12, 4:02 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Mon Mar 12, 4:43 pm)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Herbert Poetzl, (Mon Mar 12, 4:54 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Balbir Singh, (Mon Mar 12, 6:57 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Srivatsa Vaddagiri, (Mon Mar 12, 7:24 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Andrew Morton, (Mon Mar 12, 11:04 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Tue Mar 13, 12:17 am)
Re: [RFC][PATCH 1/7] Resource counters, Eric W. Biederman, (Tue Mar 13, 2:09 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Eric W. Biederman, (Tue Mar 13, 2:26 am)
Re: [RFC][PATCH 1/7] Resource counters, Pavel Emelianov, (Tue Mar 13, 2:27 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Eric W. Biederman, (Tue Mar 13, 2:43 am)
Re: [Devel] Re: [RFC][PATCH 1/7] Resource counters, Kirill Korotaev, (Tue Mar 13, 2:49 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Eric W. Biederman, (Tue Mar 13, 2:58 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Kirill Korotaev, (Tue Mar 13, 3:19 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Andrew Morton, (Tue Mar 13, 4:48 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Tue Mar 13, 7:59 am)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Tue Mar 13, 8:05 am)
Re: [RFC][PATCH 2/7] RSS controller core, Kirill Korotaev, (Tue Mar 13, 8:10 am)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Tue Mar 13, 8:11 am)
Re: [RFC][PATCH 1/7] Resource counters, Herbert Poetzl, (Tue Mar 13, 8:21 am)
Re: [RFC][PATCH 2/7] RSS controller core, Pavel Emelianov, (Tue Mar 13, 8:32 am)
Re: [RFC][PATCH 1/7] Resource counters, Pavel Emelianov, (Tue Mar 13, 8:41 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Kirill Korotaev, (Tue Mar 13, 8:43 am)
Re: [RFC][PATCH 2/7] RSS controller core, Kirill Korotaev, (Tue Mar 13, 8:54 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Eric W. Biederman, (Tue Mar 13, 9:01 am)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Tue Mar 13, 9:06 am)
Re: [RFC][PATCH 1/7] Resource counters, Srivatsa Vaddagiri, (Tue Mar 13, 9:07 am)
Re: [RFC][PATCH 1/7] Resource counters, Herbert Poetzl, (Tue Mar 13, 9:32 am)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Tue Mar 13, 10:05 am)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Tue Mar 13, 10:26 am)
Re: [RFC][PATCH 2/7] RSS controller core, Alan Cox, (Tue Mar 13, 12:09 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Tue Mar 13, 1:28 pm)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Balbir Singh, (Tue Mar 13, 11:42 pm)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Nick Piggin, (Tue Mar 13, 11:57 pm)
Re: [RFC][PATCH 1/7] Resource counters, Pavel Emelianov, (Wed Mar 14, 12:12 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Balbir Singh, (Wed Mar 14, 12:48 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Vaidyanathan Srinivasan, (Wed Mar 14, 6:25 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Vaidyanathan Srinivasan, (Wed Mar 14, 7:43 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Cedric Le Goater, (Wed Mar 14, 8:37 am)
Re: [RFC][PATCH 2/7] RSS controller core, Mel Gorman, (Wed Mar 14, 8:38 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Pavel Emelianov, (Wed Mar 14, 8:45 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Kirill Korotaev, (Wed Mar 14, 9:16 am)
Re: [RFC][PATCH 2/7] RSS controller core, Mel Gorman, (Wed Mar 14, 9:47 am)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Wed Mar 14, 1:42 pm)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Nick Piggin, (Wed Mar 14, 10:01 pm)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Balbir Singh, (Wed Mar 14, 10:44 pm)
Re: [RFC][PATCH 1/7] Resource counters, Eric W. Biederman, (Thu Mar 15, 9:51 am)
Re: [RFC][PATCH 2/7] RSS controller core, Eric W. Biederman, (Thu Mar 15, 5:55 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Fri Mar 16, 9:31 am)
Re: [RFC][PATCH 2/7] RSS controller core, Eric W. Biederman, (Fri Mar 16, 11:54 am)
Re: [RFC][PATCH 2/7] RSS controller core, Dave Hansen, (Fri Mar 16, 12:46 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Eric W. Biederman, (Sun Mar 18, 9:58 am)
Re: [RFC][PATCH 2/7] RSS controller core, Eric W. Biederman, (Sun Mar 18, 10:42 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Paul Menage, (Sun Mar 18, 3:44 pm)
Re: [RFC][PATCH 2/7] RSS controller core, Herbert Poetzl, (Mon Mar 19, 8:48 am)
Re: [Devel] Re: [RFC][PATCH 2/7] RSS controller core, Eric W. Biederman, (Mon Mar 19, 10:41 am)
controlling mmap()'d vs read/write() pages, Dave Hansen, (Tue Mar 20, 9:15 am)
Re: [RFC][PATCH 2/7] RSS controller core, Mel Gorman, (Tue Mar 20, 11:57 am)
Re: controlling mmap()'d vs read/write() pages, Eric W. Biederman, (Tue Mar 20, 2:19 pm)
Re: controlling mmap()'d vs read/write() pages, Herbert Poetzl, (Thu Mar 22, 5:51 pm)
Re: controlling mmap()'d vs read/write() pages, Nick Piggin, (Thu Mar 22, 10:57 pm)
Re: controlling mmap()'d vs read/write() pages, Eric W. Biederman, (Fri Mar 23, 3:12 am)
Re: controlling mmap()'d vs read/write() pages, Nick Piggin, (Fri Mar 23, 3:47 am)
Re: controlling mmap()'d vs read/write() pages, Eric W. Biederman, (Fri Mar 23, 5:21 am)
Re: controlling mmap()'d vs read/write() pages, Dave Hansen, (Fri Mar 23, 9:41 am)
Re: controlling mmap()'d vs read/write() pages, Herbert Poetzl, (Fri Mar 23, 11:16 am)
Re: controlling mmap()'d vs read/write() pages, Nick Piggin, (Wed Mar 28, 12:33 am)
Re: controlling mmap()'d vs read/write() pages, Balbir Singh, (Wed Mar 28, 2:18 am)
Re: [RFC][PATCH 4/7] RSS accounting hooks over the code, Ethan Solomita, (Wed Mar 28, 1:15 pm)