Merge tag 'for-6.4/io_uring-2023-05-07' of git://git.kernel.dk/linux
[platform/kernel/linux-starfive.git] / fs / cachefiles / error_inject.c
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /* Error injection handling.
3  *
4  * Copyright (C) 2021 Red Hat, Inc. All Rights Reserved.
5  * Written by David Howells (dhowells@redhat.com)
6  */
7
8 #include <linux/sysctl.h>
9 #include "internal.h"
10
11 unsigned int cachefiles_error_injection_state;
12
13 static struct ctl_table_header *cachefiles_sysctl;
14 static struct ctl_table cachefiles_sysctls[] = {
15         {
16                 .procname       = "error_injection",
17                 .data           = &cachefiles_error_injection_state,
18                 .maxlen         = sizeof(unsigned int),
19                 .mode           = 0644,
20                 .proc_handler   = proc_douintvec,
21         },
22         {}
23 };
24
25 int __init cachefiles_register_error_injection(void)
26 {
27         cachefiles_sysctl = register_sysctl("cachefiles", cachefiles_sysctls);
28         if (!cachefiles_sysctl)
29                 return -ENOMEM;
30         return 0;
31
32 }
33
34 void cachefiles_unregister_error_injection(void)
35 {
36         unregister_sysctl_table(cachefiles_sysctl);
37 }