1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Device Mapper Uevent Support
4  *
5  * Copyright IBM Corporation, 2007
6  *	Author: Mike Anderson <andmike@linux.vnet.ibm.com>
7  */
8 #ifndef DM_UEVENT_H
9 #define DM_UEVENT_H
10 
11 enum dm_uevent_type {
12 	DM_UEVENT_PATH_FAILED,
13 	DM_UEVENT_PATH_REINSTATED,
14 };
15 
16 #ifdef CONFIG_DM_UEVENT
17 
18 extern int dm_uevent_init(void);
19 extern void dm_uevent_exit(void);
20 extern void dm_send_uevents(struct list_head *events, struct kobject *kobj);
21 extern void dm_path_uevent(enum dm_uevent_type event_type,
22 			   struct dm_target *ti, const char *path,
23 			   unsigned int nr_valid_paths);
24 
25 #else
26 
dm_uevent_init(void)27 static inline int dm_uevent_init(void)
28 {
29 	return 0;
30 }
dm_uevent_exit(void)31 static inline void dm_uevent_exit(void)
32 {
33 }
dm_send_uevents(struct list_head * events,struct kobject * kobj)34 static inline void dm_send_uevents(struct list_head *events,
35 				   struct kobject *kobj)
36 {
37 }
dm_path_uevent(enum dm_uevent_type event_type,struct dm_target * ti,const char * path,unsigned int nr_valid_paths)38 static inline void dm_path_uevent(enum dm_uevent_type event_type,
39 				  struct dm_target *ti, const char *path,
40 				  unsigned int nr_valid_paths)
41 {
42 }
43 
44 #endif	/* CONFIG_DM_UEVENT */
45 
46 #endif	/* DM_UEVENT_H */
47