From: frankeh@us.ibm.com
To: Rik van Riel <riel@conectiva.com.br>
Cc: Andreas Bombe <andreas.bombe@munich.netsurf.de>,
linux-kernel@vger.rutgers.edu, linux-mm@kvack.org
Subject: Re: Best way to extend try_to_free_pages()?
Date: Tue, 16 May 2000 21:51:17 -0400 [thread overview]
Message-ID: <852568E2.000A17E8.00@D51MTA03.pok.ibm.com> (raw)
This is exactly what we would like to see.
In kernel memory caches, such as web server accelerators etc., can take
great advantage of this.
We have been building something similar for this purpose, but if you guys
are willing to put this in, all the better.
I assume everything could register as a first class citizen, including file
cache, etc.....
Some thoughts along the line.
Would it make sense to priorities such <kernel-memory-clients>.
Wouldn't it make sense to specify the number of pages as part of the
interface?
Do you assume fairness among memory clients based on the cyclic queue if
priorities is not desirable.
One can think of the cost of dropping a page in one subsystem to be higher
as in a different subsystem.
Anyway... I am all for it ....
-- Hubertus
Rik van Riel <riel@conectiva.com.br>@kvack.org on 05/16/2000 08:16:51 PM
Sent by: owner-linux-mm@kvack.org
To: Andreas Bombe <andreas.bombe@munich.netsurf.de>
cc: linux-kernel@vger.rutgers.edu, linux-mm@kvack.org
Subject: Re: Best way to extend try_to_free_pages()?
On Wed, 17 May 2000, Andreas Bombe wrote:
> (not possible, since 1394 code can be modularized)? If not, I
> consider adding some generic code to register callbacks for low
> memory situations as soon as I need it.
A callback system from do_try_to_free_pages(), where anybody
can dynamically register their cache->drop_pages() function
would be nice.
Maybe a list of caches with function pointers?
spin_lock(&cachelist_lock);
for (cache = &cachelist.next ; cache->next != &cachelist ;
cache = cachelist->next) {
count -= cache->drop_pages(priority);
if (count <= 0)
break;
}
spin_unlock(&cachelist_lock);
On module load time, init_module() could grab the cachelist_lock,
insert an entry in the list and next time try_to_free_pages() is
called our cache will be shrunk too.
regards,
Rik
--
The Internet is not a network of computers. It is a network
of people. That is its real strength.
Wanna talk about the kernel? irc.openprojects.net / #kernelnewbies
http://www.conectiva.com/ http://www.surriel.com/
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/
next reply other threads:[~2000-05-17 1:51 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-05-17 1:51 frankeh [this message]
2000-05-17 8:08 ` Stephen C. Tweedie
2000-05-17 9:44 ` Trond Myklebust
2000-05-17 10:48 ` Stephen C. Tweedie
[not found] <20000517005828.A3028@storm.local>
2000-05-16 23:46 ` Rik van Riel
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=852568E2.000A17E8.00@D51MTA03.pok.ibm.com \
--to=frankeh@us.ibm.com \
--cc=andreas.bombe@munich.netsurf.de \
--cc=linux-kernel@vger.rutgers.edu \
--cc=linux-mm@kvack.org \
--cc=riel@conectiva.com.br \
/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