[dm-devel] [PATCH v2 0/6] dm verity: optionally use tasklets
Nathan Huckleberry
nhuck at google.com
Tue Jul 26 20:18:00 UTC 2022
Hey Mike,
On Tue, Jul 26, 2022 at 9:10 AM Mike Snitzer <snitzer at kernel.org> wrote:
>
> Hi,
>
> Please see this updated patchset that reflects what I've staged for
> the 5.20 merge window, see:
> https://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm.git/log/?h=dm-5.20
>
> My only outstanding question, from previous v1 patchset, is: should
> the verify_wq be created using WQ_HIGHPRI instead of WQ_CPU_INTENSIVE?
> (I doubt it has a significant impact on performance but if you have
> insight on why you made that change, and if it meaningful, I'd happily
> apply the change).
In my testing, WQ_HIGHPRI reduced latency in both cases. I tested how
long each configuration spent waiting for work-queue jobs to be
scheduled. The numbers look consistent across the three runs I did.
See below.
Total verity work-queue wait times (ms):
Normal WQ: 880.960, 789.517, 898.852
High Priority WQ: 528.824, 439.191, 433.300
Tasklets + Normal WQ: 242.594, 145.106, 272.642
Tasklets + High Priority WQ: 85.343, 60.787, 70.620
WQ_HIGHPRI is useful even if try_verify_in_tasklet is not used.
Thanks,
Huck
>
> I've tested using cryptsetup's testsuite (which has dm-verity tests)
> but I haven't tested the "try_verify_in_tasklet" feature.
>
> I'd welcome review and focused "try_verify_in_tasklet" testing.
>
> Thanks,
> Mike
>
> Mike Snitzer (3):
> dm verity: allow optional args to alter primary args handling
> dm bufio: conditionally enable branching for DM_BUFIO_CLIENT_NO_SLEEP
> dm verity: conditionally enable branching for "try_verify_in_tasklet"
>
> Nathan Huckleberry (3):
> dm bufio: Add flags argument to dm_bufio_client_create
> dm bufio: Add DM_BUFIO_CLIENT_NO_SLEEP flag
> dm verity: Add optional "try_verify_in_tasklet" feature
>
> drivers/md/dm-bufio.c | 32 ++++-
> drivers/md/dm-ebs-target.c | 3 +-
> drivers/md/dm-integrity.c | 2 +-
> drivers/md/dm-snap-persistent.c | 2 +-
> drivers/md/dm-verity-fec.c | 4 +-
> drivers/md/dm-verity-target.c | 121 +++++++++++++++---
> drivers/md/dm-verity.h | 7 +-
> drivers/md/persistent-data/dm-block-manager.c | 3 +-
> include/linux/dm-bufio.h | 8 +-
> 9 files changed, 154 insertions(+), 28 deletions(-)
>
> --
> 2.32.1 (Apple Git-133)
>
More information about the dm-devel
mailing list