diff options
Diffstat (limited to 'fs/ntfs/sysctl.c')
-rw-r--r-- | fs/ntfs/sysctl.c | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/fs/ntfs/sysctl.c b/fs/ntfs/sysctl.c new file mode 100644 index 000000000..3ab513769 --- /dev/null +++ b/fs/ntfs/sysctl.c @@ -0,0 +1,62 @@ +/* + * sysctl.c + * System control stuff + * + * Copyright (C) 1997 Martin von Löwis + * Copyright (C) 1997 Régis Duchesne + * + */ + +#include "sysctl.h" + +#ifdef DEBUG +#include <linux/locks.h> +#include <linux/sysctl.h> + +int ntdebug = 0; + +/* Add or remove the debug sysctl + * Is this really the only file system with sysctls ? + */ +void ntfs_sysctl(int add) +{ +#define FS_NTFS 1 + /* Definition of the sysctl */ + static ctl_table ntfs_sysctls[]={ + {FS_NTFS, /* ID */ + "ntfs-debug", /* name in /proc */ + &ntdebug,sizeof(ntdebug), /* data ptr, data size */ + 0644, /* mode */ + 0, /* child */ + proc_dointvec, /* proc handler */ + 0, /* strategy */ + 0, /* proc control block */ + 0,0}, /* extra */ + {0} + }; + /* Define the parent file : /proc/sys/fs */ + static ctl_table sysctls_root[]={ + {CTL_FS, + "fs", + NULL,0, + 0555, + ntfs_sysctls}, + {0} + }; + static struct ctl_table_header *sysctls_root_header = NULL; + + if(add){ + if(!sysctls_root_header) + sysctls_root_header = register_sysctl_table(sysctls_root, 0); + } else if(sysctls_root_header) { + unregister_sysctl_table(sysctls_root_header); + sysctls_root_header = NULL; + } +} +#endif /* DEBUG */ + +/* + * Local variables: + * c-file-style: "linux" + * End: + */ |