diff options
Diffstat (limited to 'include/linux/workqueue.h')
| -rw-r--r-- | include/linux/workqueue.h | 40 |
1 files changed, 5 insertions, 35 deletions
diff --git a/include/linux/workqueue.h b/include/linux/workqueue.h index 1b22c42e9c2d..a0cc2e95ed1b 100644 --- a/include/linux/workqueue.h +++ b/include/linux/workqueue.h | |||
| @@ -56,9 +56,8 @@ enum { | |||
| 56 | WORK_NR_COLORS = (1 << WORK_STRUCT_COLOR_BITS) - 1, | 56 | WORK_NR_COLORS = (1 << WORK_STRUCT_COLOR_BITS) - 1, |
| 57 | WORK_NO_COLOR = WORK_NR_COLORS, | 57 | WORK_NO_COLOR = WORK_NR_COLORS, |
| 58 | 58 | ||
| 59 | /* special cpu IDs */ | 59 | /* not bound to any CPU, prefer the local CPU */ |
| 60 | WORK_CPU_UNBOUND = NR_CPUS, | 60 | WORK_CPU_UNBOUND = NR_CPUS, |
| 61 | WORK_CPU_END = NR_CPUS + 1, | ||
| 62 | 61 | ||
| 63 | /* | 62 | /* |
| 64 | * Reserve 7 bits off of pwq pointer w/ debugobjects turned off. | 63 | * Reserve 7 bits off of pwq pointer w/ debugobjects turned off. |
| @@ -274,13 +273,6 @@ static inline unsigned int work_static(struct work_struct *work) { return 0; } | |||
| 274 | #define delayed_work_pending(w) \ | 273 | #define delayed_work_pending(w) \ |
| 275 | work_pending(&(w)->work) | 274 | work_pending(&(w)->work) |
| 276 | 275 | ||
| 277 | /** | ||
| 278 | * work_clear_pending - for internal use only, mark a work item as not pending | ||
| 279 | * @work: The work item in question | ||
| 280 | */ | ||
| 281 | #define work_clear_pending(work) \ | ||
| 282 | clear_bit(WORK_STRUCT_PENDING_BIT, work_data_bits(work)) | ||
| 283 | |||
| 284 | /* | 276 | /* |
| 285 | * Workqueue flags and constants. For details, please refer to | 277 | * Workqueue flags and constants. For details, please refer to |
| 286 | * Documentation/workqueue.txt. | 278 | * Documentation/workqueue.txt. |
| @@ -340,6 +332,9 @@ enum { | |||
| 340 | * short queue flush time. Don't queue works which can run for too | 332 | * short queue flush time. Don't queue works which can run for too |
| 341 | * long. | 333 | * long. |
| 342 | * | 334 | * |
| 335 | * system_highpri_wq is similar to system_wq but for work items which | ||
| 336 | * require WQ_HIGHPRI. | ||
| 337 | * | ||
| 343 | * system_long_wq is similar to system_wq but may host long running | 338 | * system_long_wq is similar to system_wq but may host long running |
| 344 | * works. Queue flushing might take relatively long. | 339 | * works. Queue flushing might take relatively long. |
| 345 | * | 340 | * |
| @@ -358,26 +353,13 @@ enum { | |||
| 358 | * 'wq_power_efficient' is disabled. See WQ_POWER_EFFICIENT for more info. | 353 | * 'wq_power_efficient' is disabled. See WQ_POWER_EFFICIENT for more info. |
| 359 | */ | 354 | */ |
| 360 | extern struct workqueue_struct *system_wq; | 355 | extern struct workqueue_struct *system_wq; |
| 356 | extern struct workqueue_struct *system_highpri_wq; | ||
| 361 | extern struct workqueue_struct *system_long_wq; | 357 | extern struct workqueue_struct *system_long_wq; |
| 362 | extern struct workqueue_struct *system_unbound_wq; | 358 | extern struct workqueue_struct *system_unbound_wq; |
| 363 | extern struct workqueue_struct *system_freezable_wq; | 359 | extern struct workqueue_struct *system_freezable_wq; |
| 364 | extern struct workqueue_struct *system_power_efficient_wq; | 360 | extern struct workqueue_struct *system_power_efficient_wq; |
| 365 | extern struct workqueue_struct *system_freezable_power_efficient_wq; | 361 | extern struct workqueue_struct *system_freezable_power_efficient_wq; |
| 366 | 362 | ||
| 367 | static inline struct workqueue_struct * __deprecated __system_nrt_wq(void) | ||
| 368 | { | ||
| 369 | return system_wq; | ||
| 370 | } | ||
| 371 | |||
| 372 | static inline struct workqueue_struct * __deprecated __system_nrt_freezable_wq(void) | ||
| 373 | { | ||
| 374 | return system_freezable_wq; | ||
| 375 | } | ||
| 376 | |||
| 377 | /* equivlalent to system_wq and system_freezable_wq, deprecated */ | ||
| 378 | #define system_nrt_wq __system_nrt_wq() | ||
| 379 | #define system_nrt_freezable_wq __system_nrt_freezable_wq() | ||
| 380 | |||
| 381 | extern struct workqueue_struct * | 363 | extern struct workqueue_struct * |
| 382 | __alloc_workqueue_key(const char *fmt, unsigned int flags, int max_active, | 364 | __alloc_workqueue_key(const char *fmt, unsigned int flags, int max_active, |
| 383 | struct lock_class_key *key, const char *lock_name, ...) __printf(1, 6); | 365 | struct lock_class_key *key, const char *lock_name, ...) __printf(1, 6); |
| @@ -587,18 +569,6 @@ static inline bool keventd_up(void) | |||
| 587 | return system_wq != NULL; | 569 | return system_wq != NULL; |
| 588 | } | 570 | } |
| 589 | 571 | ||
| 590 | /* used to be different but now identical to flush_work(), deprecated */ | ||
| 591 | static inline bool __deprecated flush_work_sync(struct work_struct *work) | ||
| 592 | { | ||
| 593 | return flush_work(work); | ||
| 594 | } | ||
| 595 | |||
| 596 | /* used to be different but now identical to flush_delayed_work(), deprecated */ | ||
| 597 | static inline bool __deprecated flush_delayed_work_sync(struct delayed_work *dwork) | ||
| 598 | { | ||
| 599 | return flush_delayed_work(dwork); | ||
| 600 | } | ||
| 601 | |||
| 602 | #ifndef CONFIG_SMP | 572 | #ifndef CONFIG_SMP |
| 603 | static inline long work_on_cpu(int cpu, long (*fn)(void *), void *arg) | 573 | static inline long work_on_cpu(int cpu, long (*fn)(void *), void *arg) |
| 604 | { | 574 | { |
