|
|
| version 1.39, 2006/11/30 14:40:05 | version 1.40, 2007/02/06 14:33:32 |
|---|---|
| Line 55 xfs_stats_clear_proc_handler( | Line 55 xfs_stats_clear_proc_handler( |
| #endif /* CONFIG_PROC_FS */ | #endif /* CONFIG_PROC_FS */ |
| static ctl_table xfs_table[] = { | static ctl_table xfs_table[] = { |
| {XFS_RESTRICT_CHOWN, "restrict_chown", &xfs_params.restrict_chown.val, | { |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .ctl_name = XFS_RESTRICT_CHOWN, |
| &sysctl_intvec, NULL, | .procname = "restrict_chown", |
| &xfs_params.restrict_chown.min, &xfs_params.restrict_chown.max}, | .data = &xfs_params.restrict_chown.val, |
| .maxlen = sizeof(int), | |
| {XFS_SGID_INHERIT, "irix_sgid_inherit", &xfs_params.sgid_inherit.val, | .mode = 0644, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .proc_handler = &proc_dointvec_minmax, |
| &sysctl_intvec, NULL, | .strategy = &sysctl_intvec, |
| &xfs_params.sgid_inherit.min, &xfs_params.sgid_inherit.max}, | .extra1 = &xfs_params.restrict_chown.min, |
| .extra2 = &xfs_params.restrict_chown.max | |
| {XFS_SYMLINK_MODE, "irix_symlink_mode", &xfs_params.symlink_mode.val, | }, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | { |
| &sysctl_intvec, NULL, | .ctl_name = XFS_SGID_INHERIT, |
| &xfs_params.symlink_mode.min, &xfs_params.symlink_mode.max}, | .procname = "irix_sgid_inherit", |
| .data = &xfs_params.sgid_inherit.val, | |
| {XFS_PANIC_MASK, "panic_mask", &xfs_params.panic_mask.val, | .maxlen = sizeof(int), |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .mode = 0644, |
| &sysctl_intvec, NULL, | .proc_handler = &proc_dointvec_minmax, |
| &xfs_params.panic_mask.min, &xfs_params.panic_mask.max}, | .strategy = &sysctl_intvec, |
| .extra1 = &xfs_params.sgid_inherit.min, | |
| {XFS_ERRLEVEL, "error_level", &xfs_params.error_level.val, | .extra2 = &xfs_params.sgid_inherit.max |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | }, |
| &sysctl_intvec, NULL, | { |
| &xfs_params.error_level.min, &xfs_params.error_level.max}, | .ctl_name = XFS_SYMLINK_MODE, |
| .procname = "irix_symlink_mode", | |
| {XFS_SYNCD_TIMER, "xfssyncd_centisecs", &xfs_params.syncd_timer.val, | .data = &xfs_params.symlink_mode.val, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .maxlen = sizeof(int), |
| &sysctl_intvec, NULL, | .mode = 0644, |
| &xfs_params.syncd_timer.min, &xfs_params.syncd_timer.max}, | .proc_handler = &proc_dointvec_minmax, |
| .strategy = &sysctl_intvec, | |
| {XFS_PROBE_DMAPI, "probe_dmapi", &xfs_params.probe_dmapi.val, | .extra1 = &xfs_params.symlink_mode.min, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .extra2 = &xfs_params.symlink_mode.max |
| &sysctl_intvec, NULL, | }, |
| &xfs_params.probe_dmapi.min, &xfs_params.probe_dmapi.max}, | { |
| .ctl_name = XFS_PANIC_MASK, | |
| {XFS_PROBE_IOOPS, "probe_ioops", &xfs_params.probe_ioops.val, | .procname = "panic_mask", |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .data = &xfs_params.panic_mask.val, |
| &sysctl_intvec, NULL, | .maxlen = sizeof(int), |
| &xfs_params.probe_ioops.min, &xfs_params.probe_ioops.max}, | .mode = 0644, |
| .proc_handler = &proc_dointvec_minmax, | |
| {XFS_PROBE_QUOTA, "probe_quota", &xfs_params.probe_quota.val, | .strategy = &sysctl_intvec, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .extra1 = &xfs_params.panic_mask.min, |
| &sysctl_intvec, NULL, | .extra2 = &xfs_params.panic_mask.max |
| &xfs_params.probe_quota.min, &xfs_params.probe_quota.max}, | }, |
| {XFS_INHERIT_SYNC, "inherit_sync", &xfs_params.inherit_sync.val, | { |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .ctl_name = XFS_ERRLEVEL, |
| &sysctl_intvec, NULL, | .procname = "error_level", |
| &xfs_params.inherit_sync.min, &xfs_params.inherit_sync.max}, | .data = &xfs_params.error_level.val, |
| .maxlen = sizeof(int), | |
| {XFS_INHERIT_NODUMP, "inherit_nodump", &xfs_params.inherit_nodump.val, | .mode = 0644, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .proc_handler = &proc_dointvec_minmax, |
| &sysctl_intvec, NULL, | .strategy = &sysctl_intvec, |
| &xfs_params.inherit_nodump.min, &xfs_params.inherit_nodump.max}, | .extra1 = &xfs_params.error_level.min, |
| .extra2 = &xfs_params.error_level.max | |
| {XFS_INHERIT_NOATIME, "inherit_noatime", &xfs_params.inherit_noatim.val, | }, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | { |
| &sysctl_intvec, NULL, | .ctl_name = XFS_SYNCD_TIMER, |
| &xfs_params.inherit_noatim.min, &xfs_params.inherit_noatim.max}, | .procname = "xfssyncd_centisecs", |
| .data = &xfs_params.syncd_timer.val, | |
| {XFS_BUF_TIMER, "xfsbufd_centisecs", &xfs_params.xfs_buf_timer.val, | .maxlen = sizeof(int), |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .mode = 0644, |
| &sysctl_intvec, NULL, | .proc_handler = &proc_dointvec_minmax, |
| &xfs_params.xfs_buf_timer.min, &xfs_params.xfs_buf_timer.max}, | .strategy = &sysctl_intvec, |
| .extra1 = &xfs_params.syncd_timer.min, | |
| {XFS_BUF_AGE, "age_buffer_centisecs", &xfs_params.xfs_buf_age.val, | .extra2 = &xfs_params.syncd_timer.max |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | }, |
| &sysctl_intvec, NULL, | { |
| &xfs_params.xfs_buf_age.min, &xfs_params.xfs_buf_age.max}, | .ctl_name = XFS_PROBE_DMAPI, |
| .procname = "probe_dmapi", | |
| {XFS_INHERIT_NOSYM, "inherit_nosymlinks", &xfs_params.inherit_nosym.val, | .data = &xfs_params.probe_dmapi.val, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .maxlen = sizeof(int), |
| &sysctl_intvec, NULL, | .mode = 0644, |
| &xfs_params.inherit_nosym.min, &xfs_params.inherit_nosym.max}, | .proc_handler = &proc_dointvec_minmax, |
| .strategy = &sysctl_intvec, | |
| {XFS_ROTORSTEP, "rotorstep", &xfs_params.rotorstep.val, | .extra1 = &xfs_params.probe_dmapi.min, |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .extra2 = &xfs_params.probe_dmapi.max |
| &sysctl_intvec, NULL, | }, |
| &xfs_params.rotorstep.min, &xfs_params.rotorstep.max}, | { |
| .ctl_name = XFS_PROBE_IOOPS, | |
| {XFS_INHERIT_NODFRG, "inherit_nodefrag", &xfs_params.inherit_nodfrg.val, | .procname = "probe_ioops", |
| sizeof(int), 0644, NULL, &proc_dointvec_minmax, | .data = &xfs_params.probe_ioops.val, |
| &sysctl_intvec, NULL, | .maxlen = sizeof(int), |
| &xfs_params.inherit_nodfrg.min, &xfs_params.inherit_nodfrg.max}, | .mode = 0644, |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.probe_ioops.min, | |
| .extra2 = &xfs_params.probe_ioops.max | |
| }, | |
| { | |
| .ctl_name = XFS_PROBE_QUOTA, | |
| .procname = "probe_quota", | |
| .data = &xfs_params.probe_quota.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.probe_quota.min, | |
| .extra2 = &xfs_params.probe_quota.max | |
| }, | |
| { | |
| .ctl_name = XFS_INHERIT_SYNC, | |
| .procname = "inherit_sync", | |
| .data = &xfs_params.inherit_sync.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.inherit_sync.min, | |
| .extra2 = &xfs_params.inherit_sync.max | |
| }, | |
| { | |
| .ctl_name = XFS_INHERIT_NODUMP, | |
| .procname = "inherit_nodump", | |
| .data = &xfs_params.inherit_nodump.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.inherit_nodump.min, | |
| .extra2 = &xfs_params.inherit_nodump.max | |
| }, | |
| { | |
| .ctl_name = XFS_INHERIT_NOATIME, | |
| .procname = "inherit_noatime", | |
| .data = &xfs_params.inherit_noatim.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.inherit_noatim.min, | |
| .extra2 = &xfs_params.inherit_noatim.max | |
| }, | |
| { | |
| .ctl_name = XFS_BUF_TIMER, | |
| .procname = "xfsbufd_centisecs", | |
| .data = &xfs_params.xfs_buf_timer.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.xfs_buf_timer.min, | |
| .extra2 = &xfs_params.xfs_buf_timer.max | |
| }, | |
| { | |
| .ctl_name = XFS_BUF_AGE, | |
| .procname = "age_buffer_centisecs", | |
| .data = &xfs_params.xfs_buf_age.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.xfs_buf_age.min, | |
| .extra2 = &xfs_params.xfs_buf_age.max | |
| }, | |
| { | |
| .ctl_name = XFS_INHERIT_NOSYM, | |
| .procname = "inherit_nosymlinks", | |
| .data = &xfs_params.inherit_nosym.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.inherit_nosym.min, | |
| .extra2 = &xfs_params.inherit_nosym.max | |
| }, | |
| { | |
| .ctl_name = XFS_ROTORSTEP, | |
| .procname = "rotorstep", | |
| .data = &xfs_params.rotorstep.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.rotorstep.min, | |
| .extra2 = &xfs_params.rotorstep.max | |
| }, | |
| { | |
| .ctl_name = XFS_INHERIT_NODFRG, | |
| .procname = "inherit_nodefrag", | |
| .data = &xfs_params.inherit_nodfrg.val, | |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &proc_dointvec_minmax, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.inherit_nodfrg.min, | |
| .extra2 = &xfs_params.inherit_nodfrg.max | |
| }, | |
| /* please keep this the last entry */ | /* please keep this the last entry */ |
| #ifdef CONFIG_PROC_FS | #ifdef CONFIG_PROC_FS |
| {XFS_STATS_CLEAR, "stats_clear", &xfs_params.stats_clear.val, | { |
| sizeof(int), 0644, NULL, &xfs_stats_clear_proc_handler, | .ctl_name = XFS_STATS_CLEAR, |
| &sysctl_intvec, NULL, | .procname = "stats_clear", |
| &xfs_params.stats_clear.min, &xfs_params.stats_clear.max}, | .data = &xfs_params.stats_clear.val, |
| .maxlen = sizeof(int), | |
| .mode = 0644, | |
| .proc_handler = &xfs_stats_clear_proc_handler, | |
| .strategy = &sysctl_intvec, | |
| .extra1 = &xfs_params.stats_clear.min, | |
| .extra2 = &xfs_params.stats_clear.max | |
| }, | |
| #endif /* CONFIG_PROC_FS */ | #endif /* CONFIG_PROC_FS */ |
| {0} | {} |
| }; | }; |
| static ctl_table xfs_dir_table[] = { | static ctl_table xfs_dir_table[] = { |
| {FS_XFS, "xfs", NULL, 0, 0555, xfs_table}, | { |
| {0} | .ctl_name = FS_XFS, |
| .procname = "xfs", | |
| .mode = 0555, | |
| .child = xfs_table | |
| }, | |
| {} | |
| }; | }; |
| static ctl_table xfs_root_table[] = { | static ctl_table xfs_root_table[] = { |
| {CTL_FS, "fs", NULL, 0, 0555, xfs_dir_table}, | { |
| {0} | .ctl_name = CTL_FS, |
| .procname = "fs", | |
| .mode = 0555, | |
| .child = xfs_dir_table | |
| }, | |
| {} | |
| }; | }; |
| void | void |
| xfs_sysctl_register(void) | xfs_sysctl_register(void) |
| { | { |
| xfs_table_header = register_sysctl_table(xfs_root_table, 1); | xfs_table_header = register_sysctl_table(xfs_root_table, 0); |
| } | } |
| void | void |