1Documentation for /proc/sys/fs/* kernel version 2.2.10 2 (c) 1998, 1999, Rik van Riel <riel@nl.linux.org> 3 4For general info and legal blurb, please look in README. 5 6============================================================== 7 8This file contains documentation for the sysctl files in 9/proc/sys/fs/ and is valid for Linux kernel version 2.2. 10 11The files in this directory can be used to tune and monitor 12miscellaneous and general things in the operation of the Linux 13kernel. Since some of the files _can_ be used to screw up your 14system, it is advisable to read both documentation and source 15before actually making adjustments. 16 17Currently, these files are in /proc/sys/fs: 18- dentry-state 19- dquot-max 20- dquot-nr 21- file-max 22- file-nr 23- inode-max 24- inode-nr 25- inode-state 26- overflowuid 27- overflowgid 28- super-max 29- super-nr 30 31Documentation for the files in /proc/sys/fs/binfmt_misc is 32in Documentation/binfmt_misc.txt. 33 34============================================================== 35 36dentry-state: 37 38From linux/fs/dentry.c: 39-------------------------------------------------------------- 40struct { 41 int nr_dentry; 42 int nr_unused; 43 int age_limit; /* age in seconds */ 44 int want_pages; /* pages requested by system */ 45 int dummy[2]; 46} dentry_stat = {0, 0, 45, 0,}; 47-------------------------------------------------------------- 48 49Dentries are dynamically allocated and deallocated, and 50nr_dentry seems to be 0 all the time. Hence it's safe to 51assume that only nr_unused, age_limit and want_pages are 52used. Nr_unused seems to be exactly what its name says. 53Age_limit is the age in seconds after which dcache entries 54can be reclaimed when memory is short and want_pages is 55nonzero when shrink_dcache_pages() has been called and the 56dcache isn't pruned yet. 57 58============================================================== 59 60dquot-max & dquot-nr: 61 62The file dquot-max shows the maximum number of cached disk 63quota entries. 64 65The file dquot-nr shows the number of allocated disk quota 66entries and the number of free disk quota entries. 67 68If the number of free cached disk quotas is very low and 69you have some awesome number of simultaneous system users, 70you might want to raise the limit. 71 72============================================================== 73 74file-max & file-nr: 75 76The kernel allocates file handles dynamically, but as yet it 77doesn't free them again. 78 79The value in file-max denotes the maximum number of file- 80handles that the Linux kernel will allocate. When you get lots 81of error messages about running out of file handles, you might 82want to increase this limit. 83 84The three values in file-nr denote the number of allocated 85file handles, the number of used file handles and the maximum 86number of file handles. When the allocated file handles come 87close to the maximum, but the number of actually used ones is 88far behind, you've encountered a peak in your usage of file 89handles and you don't need to increase the maximum. 90 91============================================================== 92 93inode-max, inode-nr & inode-state: 94 95As with file handles, the kernel allocates the inode structures 96dynamically, but can't free them yet. 97 98The value in inode-max denotes the maximum number of inode 99handlers. This value should be 3-4 times larger than the value 100in file-max, since stdin, stdout and network sockets also 101need an inode struct to handle them. When you regularly run 102out of inodes, you need to increase this value. 103 104The file inode-nr contains the first two items from 105inode-state, so we'll skip to that file... 106 107Inode-state contains three actual numbers and four dummies. 108The actual numbers are, in order of appearance, nr_inodes, 109nr_free_inodes and preshrink. 110 111Nr_inodes stands for the number of inodes the system has 112allocated, this can be slightly more than inode-max because 113Linux allocates them one pageful at a time. 114 115Nr_free_inodes represents the number of free inodes (?) and 116preshrink is nonzero when the nr_inodes > inode-max and the 117system needs to prune the inode list instead of allocating 118more. 119 120============================================================== 121 122overflowgid & overflowuid: 123 124Some filesystems only support 16-bit UIDs and GIDs, although in Linux 125UIDs and GIDs are 32 bits. When one of these filesystems is mounted 126with writes enabled, any UID or GID that would exceed 65535 is translated 127to a fixed value before being written to disk. 128 129These sysctls allow you to change the value of the fixed UID and GID. 130The default is 65534. 131 132============================================================== 133 134super-max & super-nr: 135 136These numbers control the maximum number of superblocks, and 137thus the maximum number of mounted filesystems the kernel 138can have. You only need to increase super-max if you need to 139mount more filesystems than the current value in super-max 140allows you to. 141