All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@muc.de>
To: torvalds@transmeta.com
Cc: linux-kernel@vger.kernel.org
Subject: [PATCH] Size max files based on memory size
Date: Mon, 4 Feb 2002 05:53:46 +0100	[thread overview]
Message-ID: <20020204055346.A18191@averell> (raw)


Hi,

The default files_max settings of 8192 is rather low for many workloads. 
This patch changes it to be sized based on the available memory.  It assumes
file + inode + dentry are roughly 1K and will use upto 10% of the available
memory for files_max. 

Also removes two obsolete prototypes in the include file. 

Patch for 2.5.3.  Please consider applying.

Thanks,
-Andi


--- linux-2.5.3-work/fs/dcache.c-FILESSZ	Tue Jan 15 17:53:31 2002
+++ linux-2.5.3-work/fs/dcache.c	Mon Feb  4 05:43:51 2002
@@ -1283,6 +1283,7 @@
 
 	dcache_init(mempages);
 	inode_init(mempages);
+	files_init(mempages); 
 	mnt_init(mempages);
 	bdev_cache_init();
 	cdev_cache_init();
--- linux-2.5.3-work/fs/file_table.c-FILESSZ	Mon Sep 17 22:16:30 2001
+++ linux-2.5.3-work/fs/file_table.c	Mon Feb  4 05:43:43 2002
@@ -186,3 +186,17 @@
 	file_list_unlock();
 	return 0;
 }
+
+void __init files_init(unsigned long mempages)
+{ 
+	int n; 
+	/* One file with associated inode and dcache is very roughly 1K. 
+	 * Per default don't use more than 10% of our memory for files. 
+	 */ 
+
+	n = (mempages * (PAGE_SIZE / 1024)) / 10;
+	files_stat.max_files = n; 
+	if (files_stat.max_files < NR_FILE)
+		files_stat.max_files = NR_FILE;
+} 
+
--- linux-2.5.3-work/include/linux/fs.h-FILESSZ	Wed Jan 30 22:43:34 2002
+++ linux-2.5.3-work/include/linux/fs.h	Mon Feb  4 05:43:43 2002
@@ -208,6 +208,7 @@
 extern void buffer_init(unsigned long);
 extern void inode_init(unsigned long);
 extern void mnt_init(unsigned long);
+extern void files_init(unsigned long);
 
 /* bh state bits */
 enum bh_state_bits {
@@ -1475,8 +1476,6 @@
 	}
 	return 0;
 }
-unsigned long generate_cluster(kdev_t, int b[], int);
-unsigned long generate_cluster_swab32(kdev_t, int b[], int);
 extern kdev_t ROOT_DEV;
 extern char root_device_name[];
 

                 reply	other threads:[~2002-02-05  0:01 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=20020204055346.A18191@averell \
    --to=ak@muc.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.