xref: /openbmc/linux/fs/coda/sysctl.c (revision b8265621)
1  // SPDX-License-Identifier: GPL-2.0
2  /*
3   * Sysctl operations for Coda filesystem
4   * Original version: (C) 1996 P. Braam and M. Callahan
5   * Rewritten for Linux 2.1. (C) 1997 Carnegie Mellon University
6   *
7   * Carnegie Mellon encourages users to contribute improvements to
8   * the Coda project. Contact Peter Braam (coda@cs.cmu.edu).
9   */
10  
11  #include <linux/sysctl.h>
12  
13  #include "coda_int.h"
14  
15  static struct ctl_table_header *fs_table_header;
16  
17  static struct ctl_table coda_table[] = {
18  	{
19  		.procname	= "timeout",
20  		.data		= &coda_timeout,
21  		.maxlen		= sizeof(int),
22  		.mode		= 0644,
23  		.proc_handler	= proc_dointvec
24  	},
25  	{
26  		.procname	= "hard",
27  		.data		= &coda_hard,
28  		.maxlen		= sizeof(int),
29  		.mode		= 0644,
30  		.proc_handler	= proc_dointvec
31  	},
32  	{
33  		.procname	= "fake_statfs",
34  		.data		= &coda_fake_statfs,
35  		.maxlen		= sizeof(int),
36  		.mode		= 0600,
37  		.proc_handler	= proc_dointvec
38  	},
39  	{}
40  };
41  
42  static struct ctl_table fs_table[] = {
43  	{
44  		.procname	= "coda",
45  		.mode		= 0555,
46  		.child		= coda_table
47  	},
48  	{}
49  };
50  
51  void coda_sysctl_init(void)
52  {
53  	if ( !fs_table_header )
54  		fs_table_header = register_sysctl_table(fs_table);
55  }
56  
57  void coda_sysctl_clean(void)
58  {
59  	if ( fs_table_header ) {
60  		unregister_sysctl_table(fs_table_header);
61  		fs_table_header = NULL;
62  	}
63  }
64