From: Craig Christophel <merlin@transgeek.com>
To: Jan Kara <jack@suse.cz>
Cc: linux-kernel@vger.kernel.org
Subject: Re: shrink_caches inconsistancy
Date: Thu, 6 Dec 2001 10:11:45 -0500 [thread overview]
Message-ID: <20011206110726.D601FC7382@smtp.transgeek.com> (raw)
In-Reply-To: <20011205180526.DCB78C7382@smtp.transgeek.com> <20011206121615.A21816@atrey.karlin.mff.cuni.cz>
In-Reply-To: <20011206121615.A21816@atrey.karlin.mff.cuni.cz>
Well here is the fixed patch with __GFP_FS check removed from dqcache.
Thanks for the note.
Craig
> > Possibly incorrect __GFP_FS check added to the dqcache function. but
> > again consistancy is my goal.
>
> This check really isn't needed for shrink_dqcache() function. This
> function can never recurse into fs so there's no need to have __GFP_FS set.
diff -urN linux/fs/dcache.c linux.mt/fs/dcache.c
--- linux/fs/dcache.c Wed Dec 5 18:22:42 2001
+++ linux.mt/fs/dcache.c Wed Dec 5 18:22:26 2001
@@ -543,7 +543,7 @@
* too much.
*
* Priority:
- * 0 - very urgent: shrink everything
+ * 1 - very urgent: shrink everything
* ...
* 6 - base-level: try to shrink a bit.
*/
diff -urN linux/fs/dquot.c linux.mt/fs/dquot.c
--- linux/fs/dquot.c Wed Dec 5 18:22:42 2001
+++ linux.mt/fs/dquot.c Thu Dec 6 10:09:24 2001
@@ -407,11 +407,28 @@
head = free_dquots.prev;
}
}
+/*
+ * This is called from kswapd when we think we need some
+ * more memory, but aren't really sure how much. So we
+ * carefully try to free a _bit_ of our dqcache, but not
+ * too much.
+ *
+ * Priority:
+ * 1 - very urgent: shrink everything
+ * ...
+ * 6 - base-level: try to shrink a bit.
+ */
int shrink_dqcache_memory(int priority, unsigned int gfp_mask)
{
+ int count = 0;
+
+
lock_kernel();
- prune_dqcache(nr_free_dquots / (priority + 1));
+
+ count = nr_free_dquots / priority;
+
+ prune_dqcache(count);
unlock_kernel();
kmem_cache_shrink(dquot_cachep);
return 0;
diff -urN linux/fs/inode.c linux.mt/fs/inode.c
--- linux/fs/inode.c Wed Dec 5 18:22:42 2001
+++ linux.mt/fs/inode.c Wed Dec 5 18:22:26 2001
@@ -707,7 +707,17 @@
if (goal)
schedule_task(&unused_inodes_flush_task);
}
-
+/*
+ * This is called from kswapd when we think we need some
+ * more memory, but aren't really sure how much. So we
+ * carefully try to free a _bit_ of our icache, but not
+ * too much.
+ *
+ * Priority:
+ * 1 - very urgent: shrink everything
+ * ...
+ * 6 - base-level: try to shrink a bit.
+ */
int shrink_icache_memory(int priority, int gfp_mask)
{
int count = 0;
next prev parent reply other threads:[~2001-12-06 15:10 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-12-05 22:09 Craig Christophel
2001-12-06 11:16 ` Jan Kara
2001-12-06 15:11 ` Craig Christophel [this message]
2001-12-05 22:49 Craig Christophel
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=20011206110726.D601FC7382@smtp.transgeek.com \
--to=merlin@transgeek.com \
--cc=jack@suse.cz \
--cc=linux-kernel@vger.kernel.org \
/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
all inboxes | Powered by JetHome®