Blame view
drivers/scsi/scsi_sysctl.c
982 Bytes
59bd9ded4
|
1 |
// SPDX-License-Identifier: GPL-2.0-only |
1da177e4c
|
2 3 |
/* * Copyright (C) 2003 Christoph Hellwig. |
1da177e4c
|
4 5 6 7 8 9 10 11 |
*/ #include <linux/errno.h> #include <linux/init.h> #include <linux/kernel.h> #include <linux/sysctl.h> #include "scsi_logging.h" |
44818efba
|
12 |
#include "scsi_priv.h" |
1da177e4c
|
13 |
|
592749e4d
|
14 |
static struct ctl_table scsi_table[] = { |
894d24911
|
15 |
{ .procname = "logging_level", |
1da177e4c
|
16 17 18 |
.data = &scsi_logging_level, .maxlen = sizeof(scsi_logging_level), .mode = 0644, |
6d4561110
|
19 |
.proc_handler = proc_dointvec }, |
1da177e4c
|
20 21 |
{ } }; |
592749e4d
|
22 |
static struct ctl_table scsi_dir_table[] = { |
894d24911
|
23 |
{ .procname = "scsi", |
1da177e4c
|
24 25 26 27 |
.mode = 0555, .child = scsi_table }, { } }; |
592749e4d
|
28 |
static struct ctl_table scsi_root_table[] = { |
894d24911
|
29 |
{ .procname = "dev", |
1da177e4c
|
30 31 32 33 34 35 36 37 38 |
.mode = 0555, .child = scsi_dir_table }, { } }; static struct ctl_table_header *scsi_table_header; int __init scsi_init_sysctl(void) { |
0b4d41471
|
39 |
scsi_table_header = register_sysctl_table(scsi_root_table); |
1da177e4c
|
40 41 42 43 44 45 46 47 48 |
if (!scsi_table_header) return -ENOMEM; return 0; } void scsi_exit_sysctl(void) { unregister_sysctl_table(scsi_table_header); } |