1/* 2 * Sysctl operations for Coda filesystem 3 * Original version: (C) 1996 P. Braam and M. Callahan 4 * Rewritten for Linux 2.1. (C) 1997 Carnegie Mellon University 5 * 6 * Carnegie Mellon encourages users to contribute improvements to 7 * the Coda project. Contact Peter Braam (coda@cs.cmu.edu). 8 */ 9 10#include <linux/sysctl.h> 11 12#include "coda_int.h" 13 14#ifdef CONFIG_SYSCTL 15static struct ctl_table_header *fs_table_header; 16 17static 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 42static struct ctl_table fs_table[] = { 43 { 44 .procname = "coda", 45 .mode = 0555, 46 .child = coda_table 47 }, 48 {} 49}; 50 51void coda_sysctl_init(void) 52{ 53 if ( !fs_table_header ) 54 fs_table_header = register_sysctl_table(fs_table); 55} 56 57void 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 65#else 66void coda_sysctl_init(void) 67{ 68} 69 70void coda_sysctl_clean(void) 71{ 72} 73#endif 74