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
10struct workqueue_struct;
11
12struct work_struct;
13typedef void (*work_func_t)(struct work_struct *work);
14void delayed_work_timer_fn(struct timer_list *t);
15
16struct 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

source code of linux/include/linux/workqueue_types.h