root/fs/nfs/nfs4sysctl.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. nfs4_register_sysctl
  2. nfs4_unregister_sysctl

   1 // SPDX-License-Identifier: GPL-2.0
   2 /*
   3  * linux/fs/nfs/nfs4sysctl.c
   4  *
   5  * Sysctl interface to NFS v4 parameters
   6  *
   7  * Copyright (c) 2006 Trond Myklebust <Trond.Myklebust@netapp.com>
   8  */
   9 #include <linux/sysctl.h>
  10 #include <linux/nfs_fs.h>
  11 
  12 #include "nfs4_fs.h"
  13 #include "nfs4idmap.h"
  14 #include "callback.h"
  15 
  16 static const int nfs_set_port_min;
  17 static const int nfs_set_port_max = 65535;
  18 static struct ctl_table_header *nfs4_callback_sysctl_table;
  19 
  20 static struct ctl_table nfs4_cb_sysctls[] = {
  21         {
  22                 .procname = "nfs_callback_tcpport",
  23                 .data = &nfs_callback_set_tcpport,
  24                 .maxlen = sizeof(int),
  25                 .mode = 0644,
  26                 .proc_handler = proc_dointvec_minmax,
  27                 .extra1 = (int *)&nfs_set_port_min,
  28                 .extra2 = (int *)&nfs_set_port_max,
  29         },
  30         {
  31                 .procname = "idmap_cache_timeout",
  32                 .data = &nfs_idmap_cache_timeout,
  33                 .maxlen = sizeof(int),
  34                 .mode = 0644,
  35                 .proc_handler = proc_dointvec,
  36         },
  37         { }
  38 };
  39 
  40 static struct ctl_table nfs4_cb_sysctl_dir[] = {
  41         {
  42                 .procname = "nfs",
  43                 .mode = 0555,
  44                 .child = nfs4_cb_sysctls,
  45         },
  46         { }
  47 };
  48 
  49 static struct ctl_table nfs4_cb_sysctl_root[] = {
  50         {
  51                 .procname = "fs",
  52                 .mode = 0555,
  53                 .child = nfs4_cb_sysctl_dir,
  54         },
  55         { }
  56 };
  57 
  58 int nfs4_register_sysctl(void)
  59 {
  60         nfs4_callback_sysctl_table = register_sysctl_table(nfs4_cb_sysctl_root);
  61         if (nfs4_callback_sysctl_table == NULL)
  62                 return -ENOMEM;
  63         return 0;
  64 }
  65 
  66 void nfs4_unregister_sysctl(void)
  67 {
  68         unregister_sysctl_table(nfs4_callback_sysctl_table);
  69         nfs4_callback_sysctl_table = NULL;
  70 }

/* [<][>][^][v][top][bottom][index][help] */