1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_WORKQUEUE_TYPES_H 3 #define _LINUX_WORKQUEUE_TYPES_H 4 5 #include <linux/atomic.h> 6 #include <linux/lockdep_types.h> 7 #include <linux/timer_types.h> 8 #include <linux/types.h> 9 10 struct workqueue_struct; 11 12 struct work_struct; 13 typedef void (*work_func_t)(struct work_struct *work); 14 void delayed_work_timer_fn(struct timer_list *t); 15 16 struct work_struct { 17 atomic_long_t data; 18 struct list_head entry; 19 work_func_t func; 20 #ifdef CONFIG_LOCKDEP 21 struct lockdep_map lockdep_map; 22 #endif 23 }; 24 25 #endif /* _LINUX_WORKQUEUE_TYPES_H */ 26