Each CPU-specific and unbound kworker kthread conforms to a particular naming scheme. However, this does not extend to the rescuer kworker. At present, a rescuer kworker is simply named according to its workqueue's name. This can be cryptic. This patch modifies a rescuer to follow the kworker naming scheme. The "R" is indicative of a rescuer and after "-" is its workqueue's name e.g. "kworker/R-ext4-rsv-conver". tj: Use "R" instead of "r" as the prefix to make it more distinctive and consistent with how highpri pools are marked.
Showing the changes to kernel/workqueue.c (1 of 1 file). Show all
Unified · Split
| @@ -4642,7 +4642,7 @@ static int init_rescuer(struct workqueue_struct *wq) · 4641 unmodified lines | ||
| 4642 | 4642 | } |
| 4643 | 4643 | |
| 4644 | 4644 | rescuer->rescue_wq = wq; |
| 4645 | − rescuer->task = kthread_create(rescuer_thread, rescuer, "%s", wq->name); | |
| 4645 | + rescuer->task = kthread_create(rescuer_thread, rescuer, "kworker/R-%s", wq->name); | |
| 4646 | 4646 | if (IS_ERR(rescuer->task)) { |
| 4647 | 4647 | ret = PTR_ERR(rescuer->task); |
| 4648 | 4648 | pr_err("workqueue: Failed to create a rescuer kthread for wq \"%s\": %pe", |