Re: [PATCH v8 20/28] KVM: arm64: Add clock support for the pKVM hyp
From: Vincent Donnefort <hidden>
Date: 2025-11-20 11:36:21
Also in:
kvmarm, linux-arm-kernel, lkml
From: Vincent Donnefort <hidden>
Date: 2025-11-20 11:36:21
Also in:
kvmarm, linux-arm-kernel, lkml
[...]
quoted
+/* Using host provided data. Do not use for anything else than debugging. */ +u64 trace_clock(void) +{ + struct clock_data *clock = &trace_clock_data; + u64 bank = smp_load_acquire(&clock->cur); + u64 cyc, ns; + + cyc = __arch_counter_get_cntpct() - clock->data[bank].epoch_cyc;I can only imagine that you don't care about the broken systems that do not have a monotonic counter, and that will happily have their counter swing back and forth?
I haven't used the _stable() variant for the affected devices... Hum this will not be trivial from the hypervisor. I'll see what I can do.
Also, you may want to document why you are using the physical counter instead of the virtual one. I guess that you don't want CNTVOFF_EL2 to apply when HCR_EL2.E2H==0, but given that you never allow anything else for pKVM, this is slightly odd.
You mean I might as well use __arch_counter_get_cntvct() as CNTVOFF_EL2 will always be ignored in the pKVM case?
Thanks, M. -- Without deviation from the norm, progress is not possible.