Where are the Linux kernel parameters present in /proc/sys documented?

The authoritative source of what is in /proc is documented in the kernel source tree in Documentation/filesystem/proc.txt. That references Documentation/sysctl as the document that describes /proc/sys. That document references others in the kernel source tree documentation, so be prepared to navigate through that tree.

Those links are to a gitweb interface, so you can pick a particular version of Linux that you are interested in. Those links point to current HEAD.


The directory /proc/sys gives easy access to sysctl settings through the shell. You can read and write these settings either by reading and writing these files, or by calling the sysctl utility or the underlying sysctl system call.

The various settings are described in the kernel documentation, in Documentation/sysctl/*. Start with README.

This is fairly low-level stuff, so sometimes the documentation isn't completely precise and you'll need to turn to the source. Each sysctl setting usually corresponds to a variable with a resembling name inside the kernel (but this is a convention, not a rule). Many settings are declared in kernel/sysctl.c, but additional kernel components and modules can define their own. In the source (on a local copy or online at LXR), search for the name of the sysctl setting between quotes (e.g. "xfrm_larval_drop") to find its declaration.