diff options
Diffstat (limited to 'include/linux/smp.h')
| -rw-r--r-- | include/linux/smp.h | 23 | 
1 files changed, 8 insertions, 15 deletions
| diff --git a/include/linux/smp.h b/include/linux/smp.h index 7ee202ad21a6..80d557ef8a11 100644 --- a/include/linux/smp.h +++ b/include/linux/smp.h @@ -12,29 +12,22 @@  #include <linux/list.h>  #include <linux/cpumask.h>  #include <linux/init.h> -#include <linux/llist.h> +#include <linux/smp_types.h>  typedef void (*smp_call_func_t)(void *info);  typedef bool (*smp_cond_func_t)(int cpu, void *info); -enum { -	CSD_FLAG_LOCK		= 0x01, - -	/* IRQ_WORK_flags */ - -	CSD_TYPE_ASYNC		= 0x00, -	CSD_TYPE_SYNC		= 0x10, -	CSD_TYPE_IRQ_WORK	= 0x20, -	CSD_TYPE_TTWU		= 0x30, -	CSD_FLAG_TYPE_MASK	= 0xF0, -}; -  /*   * structure shares (partial) layout with struct irq_work   */  struct __call_single_data { -	struct llist_node llist; -	unsigned int flags; +	union { +		struct __call_single_node node; +		struct { +			struct llist_node llist; +			unsigned int flags; +		}; +	};  	smp_call_func_t func;  	void *info;  }; | 
