xref: /openbmc/linux/fs/coda/sysctl.c (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1b2441318SGreg Kroah-Hartman // SPDX-License-Identifier: GPL-2.0
21da177e4SLinus Torvalds /*
31da177e4SLinus Torvalds  * Sysctl operations for Coda filesystem
41da177e4SLinus Torvalds  * Original version: (C) 1996 P. Braam and M. Callahan
51da177e4SLinus Torvalds  * Rewritten for Linux 2.1. (C) 1997 Carnegie Mellon University
61da177e4SLinus Torvalds  *
71da177e4SLinus Torvalds  * Carnegie Mellon encourages users to contribute improvements to
81da177e4SLinus Torvalds  * the Coda project. Contact Peter Braam (coda@cs.cmu.edu).
91da177e4SLinus Torvalds  */
101da177e4SLinus Torvalds 
111da177e4SLinus Torvalds #include <linux/sysctl.h>
121da177e4SLinus Torvalds 
133cf01f28SJan Harkes #include "coda_int.h"
141da177e4SLinus Torvalds 
151da177e4SLinus Torvalds static struct ctl_table_header *fs_table_header;
161da177e4SLinus Torvalds 
17a88bbbeeSJoe Perches static struct ctl_table coda_table[] = {
18fd6065b4SEric W. Biederman 	{
19fd6065b4SEric W. Biederman 		.procname	= "timeout",
20fd6065b4SEric W. Biederman 		.data		= &coda_timeout,
21fd6065b4SEric W. Biederman 		.maxlen		= sizeof(int),
22fd6065b4SEric W. Biederman 		.mode		= 0644,
236d456111SEric W. Biederman 		.proc_handler	= proc_dointvec
24fd6065b4SEric W. Biederman 	},
25fd6065b4SEric W. Biederman 	{
26fd6065b4SEric W. Biederman 		.procname	= "hard",
27fd6065b4SEric W. Biederman 		.data		= &coda_hard,
28fd6065b4SEric W. Biederman 		.maxlen		= sizeof(int),
29fd6065b4SEric W. Biederman 		.mode		= 0644,
306d456111SEric W. Biederman 		.proc_handler	= proc_dointvec
31fd6065b4SEric W. Biederman 	},
32fd6065b4SEric W. Biederman 	{
33fd6065b4SEric W. Biederman 		.procname	= "fake_statfs",
34fd6065b4SEric W. Biederman 		.data		= &coda_fake_statfs,
35fd6065b4SEric W. Biederman 		.maxlen		= sizeof(int),
36fd6065b4SEric W. Biederman 		.mode		= 0600,
376d456111SEric W. Biederman 		.proc_handler	= proc_dointvec
38fd6065b4SEric W. Biederman 	},
39fd6065b4SEric W. Biederman 	{}
401da177e4SLinus Torvalds };
411da177e4SLinus Torvalds 
coda_sysctl_init(void)421da177e4SLinus Torvalds void coda_sysctl_init(void)
431da177e4SLinus Torvalds {
441da177e4SLinus Torvalds 	if ( !fs_table_header )
45*1119aaa8SLuis Chamberlain 		fs_table_header = register_sysctl("coda", coda_table);
461da177e4SLinus Torvalds }
471da177e4SLinus Torvalds 
coda_sysctl_clean(void)481da177e4SLinus Torvalds void coda_sysctl_clean(void)
491da177e4SLinus Torvalds {
501da177e4SLinus Torvalds 	if ( fs_table_header ) {
511da177e4SLinus Torvalds 		unregister_sysctl_table(fs_table_header);
521da177e4SLinus Torvalds 		fs_table_header = NULL;
531da177e4SLinus Torvalds 	}
541da177e4SLinus Torvalds }
55