workqueue: misc/cosmetic updates
Make the following updates in preparation of concurrency managed workqueue. None of these changes causes any visible behavior difference. * Add comments and adjust indentations to data structures and several functions. * Rename wq_per_cpu() to get_cwq() and swap the position of two parameters for consistency. Convert a direct per_cpu_ptr() access to wq->cpu_wq to get_cwq(). * Add work_static() and Update set_wq_data() such that it sets the flags part to WORK_STRUCT_PENDING | WORK_STRUCT_STATIC if static | @extra_flags. * Move santiy check on work->entry emptiness from queue_work_on() to __queue_work() which all queueing paths share. * Make __queue_work() take @cpu and @wq instead of @cwq. * Restructure flush_work() and __create_workqueue_key() to make them easier to modify. Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
@@ -96,9 +96,14 @@ struct execute_work {
|
||||
#ifdef CONFIG_DEBUG_OBJECTS_WORK
|
||||
extern void __init_work(struct work_struct *work, int onstack);
|
||||
extern void destroy_work_on_stack(struct work_struct *work);
|
||||
static inline unsigned int work_static(struct work_struct *work)
|
||||
{
|
||||
return *work_data_bits(work) & (1 << WORK_STRUCT_STATIC);
|
||||
}
|
||||
#else
|
||||
static inline void __init_work(struct work_struct *work, int onstack) { }
|
||||
static inline void destroy_work_on_stack(struct work_struct *work) { }
|
||||
static inline unsigned int work_static(struct work_struct *work) { return 0; }
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user