Commit 5584b944 authored by David Brazdil's avatar David Brazdil Committed by Quentin Perret
Browse files

ANDROID: KVM: arm64: s2mpu: Fix SYNC latency regression



SysMMU_SYNCs provide an invalidation-complete signal to the S2MPU
driver but the latency can be quite high. Improve this by waiting for
all the SYNCs in parallel - separate the initiation of invalidation
barrier from waiting for completion. This way we initiate invalidation
on all SYNCs first, then wait for all of them to complete.

The previously introduced exponential-backoff only kicks in if the
SYNC_COMP_COMPLETE bit is not set after the parallel invalidation.

Bug: 249161451
Signed-off-by: default avatarDavid Brazdil <dbrazdil@google.com>
Change-Id: I9d544bc65f8633d376c7ccd65ea23195ca432964
(cherry picked from commit 1da102d4)
Signed-off-by: default avatarMostafa Saleh <smostafa@google.com>
Signed-off-by: default avatarQuentin Perret <qperret@google.com>
parent f21a6c3c
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment