xref: /linux/lib/notifier-error-inject.h (revision ca55b2fef3a9373fcfc30f82fd26bc7fccbda732)
1 #include <linux/atomic.h>
2 #include <linux/debugfs.h>
3 #include <linux/notifier.h>
4 
5 struct notifier_err_inject_action {
6 	unsigned long val;
7 	int error;
8 	const char *name;
9 };
10 
11 #define NOTIFIER_ERR_INJECT_ACTION(action)	\
12 	.name = #action, .val = (action),
13 
14 struct notifier_err_inject {
15 	struct notifier_block nb;
16 	struct notifier_err_inject_action actions[];
17 	/* The last slot must be terminated with zero sentinel */
18 };
19 
20 extern struct dentry *notifier_err_inject_dir;
21 
22 extern struct dentry *notifier_err_inject_init(const char *name,
23 		struct dentry *parent, struct notifier_err_inject *err_inject,
24 		int priority);
25