blktests nvme/062 lockdep â defer TLS inline send to io_work?
Xixin Liu
liuxixin at kylinos.cn
Tue Jun 30 18:50:43 PDT 2026
Hi Hannes,
On Mon, 29 Jun 2026, Hannes Reinecke wrote:
> The most likely testcase showing regressions would be having as many
> jobs as your machine has CPUs and use qd=1.
> Just a single job will not be enough to show a noticeable difference.
I re-ran the TLS perf comparison with one job per CPU and queue depth 1
on a new test host. Please treat the results below as the authoritative
perf data for this workload.
Test setup
----------
aarch64 server, 128 CPUs, linux-next 7.2.0-rc1-*-perf-dirty
Same-machine nvmet-tcp with TLS; target backing store is a 32G file on a
local NVMe SSD. fio runs against the connected nvme-tcp namespace.
Compared inline send_all (baseline) vs deferring TLS inline send (io_work).
fio randwrite 4k, direct I/O, 30s per run, 15s warmup discarded before
each mode (10 runs total):
- iodepth=1, numjobs=128:
baseline 54539.4 IOPS, mean 2.34ms, p99 6.02ms
patched 54529.0 IOPS, mean 2.34ms, p99 5.99ms
- iodepth=128, numjobs=8:
baseline 54632.6 IOPS, mean 18.74ms, p99 47.08ms
patched 54633.6 IOPS, mean 18.74ms, p99 46.92ms
So on a 128-CPU box with the workload you called out, deferring TLS inline
send still looks neutral across 10 consecutive runs after warmup.
Thanks,
Xixin Liu
More information about the Linux-nvme
mailing list