162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * /proc/sys/fs shared sysctls
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * These sysctls are shared between different filesystems.
662306a36Sopenharmony_ci */
762306a36Sopenharmony_ci#include <linux/init.h>
862306a36Sopenharmony_ci#include <linux/sysctl.h>
962306a36Sopenharmony_ci
1062306a36Sopenharmony_cistatic struct ctl_table fs_shared_sysctls[] = {
1162306a36Sopenharmony_ci	{
1262306a36Sopenharmony_ci		.procname	= "overflowuid",
1362306a36Sopenharmony_ci		.data		= &fs_overflowuid,
1462306a36Sopenharmony_ci		.maxlen		= sizeof(int),
1562306a36Sopenharmony_ci		.mode		= 0644,
1662306a36Sopenharmony_ci		.proc_handler	= proc_dointvec_minmax,
1762306a36Sopenharmony_ci		.extra1		= SYSCTL_ZERO,
1862306a36Sopenharmony_ci		.extra2		= SYSCTL_MAXOLDUID,
1962306a36Sopenharmony_ci	},
2062306a36Sopenharmony_ci	{
2162306a36Sopenharmony_ci		.procname	= "overflowgid",
2262306a36Sopenharmony_ci		.data		= &fs_overflowgid,
2362306a36Sopenharmony_ci		.maxlen		= sizeof(int),
2462306a36Sopenharmony_ci		.mode		= 0644,
2562306a36Sopenharmony_ci		.proc_handler	= proc_dointvec_minmax,
2662306a36Sopenharmony_ci		.extra1		= SYSCTL_ZERO,
2762306a36Sopenharmony_ci		.extra2		= SYSCTL_MAXOLDUID,
2862306a36Sopenharmony_ci	},
2962306a36Sopenharmony_ci	{ }
3062306a36Sopenharmony_ci};
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_cistatic int __init init_fs_sysctls(void)
3362306a36Sopenharmony_ci{
3462306a36Sopenharmony_ci	register_sysctl_init("fs", fs_shared_sysctls);
3562306a36Sopenharmony_ci	return 0;
3662306a36Sopenharmony_ci}
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ciearly_initcall(init_fs_sysctls);
39