On 13.02.2026 17:28, Oleksii Kurochko wrote:
> Introduce a function pointer for sbi_set_timer(), since different OpenSBI
> versions may implement the TIME extension with different extension IDs
> and/or function IDs.
> 
> If the TIME extension is not available, fall back to the legacy timer
> mechanism. This is useful when Xen runs as a guest under another Xen,
> because the TIME extension is not currently virtualised and therefore
> will not appear as available.
> Despite of the fact that sbi_set_timer_v01 is introduced and used as
> fall back, SBI v0.1 still isn't fully supported (with the current SBI
> calls usage, sbi_rfence_v01 should be introduced too), so panic()
> in sbi_init() isn't removed.
> 
> The sbi_set_timer() pointer will be used by reprogram_timer() to program
> Xen’s physical timer as without SSTC extension there is no any other
> option except SBI call to do that as only M-timer is available for us.
> 
> Use dprintk() for all the cases to print that a speicifc SBI extension
> is available as it isn't really necessary in case of release builds.
> 
> Signed-off-by: Oleksii Kurochko <[email protected]>
> Acked-by: Jan Beulich <[email protected]>
> ---
> Changes in v4:
>  - Add "stime_value is in absolute time" to the comment above declaration
>    of sbi_set_timer() function pointer.

Yet it still ...

> @@ -134,6 +138,23 @@ int sbi_remote_hfence_gvma(const cpumask_t *cpu_mask, 
> vaddr_t start,
>  int sbi_remote_hfence_gvma_vmid(const cpumask_t *cpu_mask, vaddr_t start,
>                                  size_t size, unsigned long vmid);
>  
> +/*
> + * Programs the clock for next event after stime_value time. stime_value is 
> in
> + * absolute time. This function must clear the pending timer interrupt bit as
> + * well.

... says "after" when, as per my understanding, it's "at or after". At which
point the final "time" in the sentence becomes bogus (says me as a non-
native speaker). Which in turn is what my v3 comment was triggered by, as
"after stime_value time" to me suggests something relative ("this amount of
time needs to pass"), when that's not what is meant, as the added sentence
now tries to clarify.

Jan

Reply via email to