11a59d1b8SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
251e5b2bdSMike Anderson /*
351e5b2bdSMike Anderson * Device Mapper Uevent Support
451e5b2bdSMike Anderson *
551e5b2bdSMike Anderson * Copyright IBM Corporation, 2007
651e5b2bdSMike Anderson * Author: Mike Anderson <andmike@linux.vnet.ibm.com>
751e5b2bdSMike Anderson */
851e5b2bdSMike Anderson #ifndef DM_UEVENT_H
951e5b2bdSMike Anderson #define DM_UEVENT_H
1051e5b2bdSMike Anderson
117a8c3d3bSMike Anderson enum dm_uevent_type {
127a8c3d3bSMike Anderson DM_UEVENT_PATH_FAILED,
137a8c3d3bSMike Anderson DM_UEVENT_PATH_REINSTATED,
147a8c3d3bSMike Anderson };
157a8c3d3bSMike Anderson
1651e5b2bdSMike Anderson #ifdef CONFIG_DM_UEVENT
1751e5b2bdSMike Anderson
1851e5b2bdSMike Anderson extern int dm_uevent_init(void);
1951e5b2bdSMike Anderson extern void dm_uevent_exit(void);
207a8c3d3bSMike Anderson extern void dm_send_uevents(struct list_head *events, struct kobject *kobj);
217a8c3d3bSMike Anderson extern void dm_path_uevent(enum dm_uevent_type event_type,
227a8c3d3bSMike Anderson struct dm_target *ti, const char *path,
23*86a3238cSHeinz Mauelshagen unsigned int nr_valid_paths);
2451e5b2bdSMike Anderson
2551e5b2bdSMike Anderson #else
2651e5b2bdSMike Anderson
dm_uevent_init(void)2751e5b2bdSMike Anderson static inline int dm_uevent_init(void)
2851e5b2bdSMike Anderson {
2951e5b2bdSMike Anderson return 0;
3051e5b2bdSMike Anderson }
dm_uevent_exit(void)3151e5b2bdSMike Anderson static inline void dm_uevent_exit(void)
3251e5b2bdSMike Anderson {
3351e5b2bdSMike Anderson }
dm_send_uevents(struct list_head * events,struct kobject * kobj)347a8c3d3bSMike Anderson static inline void dm_send_uevents(struct list_head *events,
357a8c3d3bSMike Anderson struct kobject *kobj)
367a8c3d3bSMike Anderson {
377a8c3d3bSMike Anderson }
dm_path_uevent(enum dm_uevent_type event_type,struct dm_target * ti,const char * path,unsigned int nr_valid_paths)387a8c3d3bSMike Anderson static inline void dm_path_uevent(enum dm_uevent_type event_type,
397a8c3d3bSMike Anderson struct dm_target *ti, const char *path,
40*86a3238cSHeinz Mauelshagen unsigned int nr_valid_paths)
417a8c3d3bSMike Anderson {
427a8c3d3bSMike Anderson }
4351e5b2bdSMike Anderson
4451e5b2bdSMike Anderson #endif /* CONFIG_DM_UEVENT */
4551e5b2bdSMike Anderson
4651e5b2bdSMike Anderson #endif /* DM_UEVENT_H */
47