dm: make workqueue names device-specific
authorMichał Mirosław <mirq-linux@rere.qmqm.pl>
Thu, 21 Oct 2021 21:13:25 +0000 (23:13 +0200)
committerMike Snitzer <snitzer@redhat.com>
Mon, 1 Nov 2021 17:28:51 +0000 (13:28 -0400)
Add device number to kdmflush workqueue name to help debugging CPU usage.

Resulting `ps axfu` snippet:

root        3791  0.0  0.0      0     0 ?        I<   paź19   0:00  \_ [kdmflush/253:7]
root        3792  0.0  0.0      0     0 ?        I<   paź19   0:00  \_ [kcryptd_io/253:7]
root        3793  0.0  0.0      0     0 ?        I<   paź19   0:00  \_ [kcryptd/253:7]
root        3794  0.0  0.0      0     0 ?        S    paź19   0:00  \_ [dmcrypt_write/253:7]
root        3814  0.0  0.0      0     0 ?        I<   paź19   0:00  \_ [kdmflush/253:8]
root        3815  0.0  0.0      0     0 ?        I<   paź19   0:00  \_ [kdmflush/253:9]
root        3816  0.0  0.0      0     0 ?        I<   paź19   0:00  \_ [kdmflush/253:10]

Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
drivers/md/dm.c

index b966634cafd44fcc7c148ff64027cf268a65ba35..3e8fdc8bf239dd8c6cc13e70d4c1f35d160f695d 100644 (file)
@@ -1800,7 +1800,7 @@ static struct mapped_device *alloc_dev(int minor)
 
        format_dev_t(md->name, MKDEV(_major, minor));
 
-       md->wq = alloc_workqueue("kdmflush", WQ_MEM_RECLAIM, 0);
+       md->wq = alloc_workqueue("kdmflush/%s", WQ_MEM_RECLAIM, 0, md->name);
        if (!md->wq)
                goto bad;