All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Size max files based on memory size
@ 2002-02-04  4:53 Andi Kleen
  0 siblings, 0 replies; only message in thread
From: Andi Kleen @ 2002-02-04  4:53 UTC (permalink / raw)
  To: torvalds; +Cc: linux-kernel


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[];
 

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-02-05  0:01 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-02-04  4:53 [PATCH] Size max files based on memory size Andi Kleen

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.