Add a local var @work_flags to calculate work_flags step by step, so that we don't need to squeeze several flags in only the last line of code. Parepare for next patch to add a bit to barrier work item's flag. Not squshing this to next patch makes it clear that what it will have changed. No functional change intended.
Showing the changes to kernel/workqueue.c (1 of 1 file). Show all
Unified · Split
| @@ -2659,8 +2659,8 @@ static void insert_wq_barrier(struct pool_workqueue *pwq, · 2658 unmodified lines | ||
| 2659 | 2659 | struct wq_barrier *barr, |
| 2660 | 2660 | struct work_struct *target, struct worker *worker) |
| 2661 | 2661 | { |
| 2662 | + unsigned int work_flags = work_color_to_flags(WORK_NO_COLOR); | |
| 2662 | 2663 | struct list_head *head; |
| 2663 | − unsigned int linked = 0; | |
| 2664 | 2664 | |
| 2665 | 2665 | /* |
| 2666 | 2666 | * debugobject calls are safe here even with pool->lock locked |
| @@ -2686,13 +2686,12 @@ static void insert_wq_barrier(struct pool_workqueue *pwq, · 19 unmodified lines | ||
| 2686 | 2686 | |
| 2687 | 2687 | head = target->entry.next; |
| 2688 | 2688 | /* there can already be other linked works, inherit and set */ |
| 2689 | − linked = *bits & WORK_STRUCT_LINKED; | |
| 2689 | + work_flags |= *bits & WORK_STRUCT_LINKED; | |
| 2690 | 2690 | __set_bit(WORK_STRUCT_LINKED_BIT, bits); |
| 2691 | 2691 | } |
| 2692 | 2692 | |
| 2693 | 2693 | debug_work_activate(&barr->work); |
| 2694 | − insert_work(pwq, &barr->work, head, | |
| 2695 | − work_color_to_flags(WORK_NO_COLOR) | linked); | |
| 2694 | + insert_work(pwq, &barr->work, head, work_flags); | |
| 2696 | 2695 | } |
| 2697 | 2696 | |
| 2698 | 2697 | /** |