Skip to content

io-pgtable lock removal

Will Deacon linux-arm-kernel linux-iommu 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest0 of 8 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 8 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/8] io-pgtable lock removal
Quoted 15 lines · Ray Jui
Quoted 14 lines · Will Deacon
Quoted 2 lines · Ray Jui

However, with the fix patch, I can still see the deadlock message when I have > 32 iperf TX threads active in the system:

Damn. We've been going over this today and the only plausible theory seems to be that concurrent TLB syncs are causing the completion to be pushed out, resulting in timeouts.

Can you try this patch below, instead of the one I sent before, please?

Thanks,

Will

Quoted 7 lines
Quoted 1 line

--->8

Good news! I can confirm that with the new patch below, the error log of "TLB sync timed out" is now gone. I ran 20 iterations of the iperf client test with 64 threads spread across 8 CPUs. The error message used to coming out very quickly with just one iteration. But now it's completely gone.

Good, I'll queue this is as a fix then. Thanks for testing!

Quoted 3 lines

At the same time, I do seem to observe a slight impact on performance when multiple threads are used, but I guess that is expected, given that a spin lock is added to protect the TLB sync.

Hopefully that performance will pick up again once we defer the sync to the end of iommu_unmap.

Will