Commit 748261c0 authored by Andi Kleen's avatar Andi Kleen Committed by Linus Torvalds

[PATCH] Fix mount hash table

On my 512MB machine with 6 mount points the mount hash table uses 64K.
This patch brings it to a more reasonable size by limiting it to one
page.
parent 2ad3072d
...@@ -1048,15 +1048,9 @@ void __init mnt_init(unsigned long mempages) ...@@ -1048,15 +1048,9 @@ void __init mnt_init(unsigned long mempages)
if (!mnt_cache) if (!mnt_cache)
panic("Cannot create vfsmount cache"); panic("Cannot create vfsmount cache");
mempages >>= (16 - PAGE_SHIFT); order = 0;
mempages *= sizeof(struct list_head);
for (order = 0; ((1UL << order) << PAGE_SHIFT) < mempages; order++)
;
do {
mount_hashtable = (struct list_head *) mount_hashtable = (struct list_head *)
__get_free_pages(GFP_ATOMIC, order); __get_free_pages(GFP_ATOMIC, order);
} while (mount_hashtable == NULL && --order >= 0);
if (!mount_hashtable) if (!mount_hashtable)
panic("Failed to allocate mount hash table\n"); panic("Failed to allocate mount hash table\n");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment