|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 01/16] xen/riscv: introduce struct arch_vcpu
On 1/26/26 1:53 PM, Jan Beulich wrote: On 26.01.2026 13:30, Oleksii Kurochko wrote:On 1/26/26 12:41 PM, Jan Beulich wrote:On 22.01.2026 17:47, Oleksii Kurochko wrote: Yeah, but at time when I was writing the commit I thought only about one meaning "far from where the stack starts when we enter the hypervisor". I can update the comment and drop the wording about being “deep in the call frame” to avoid confusion. In that case it would simply read: + /* + * Callee saved registers for Xen's state used to + * switch from prev's stack to the next's stack during context switch. + */Yes please.Also, what about tp? The 't' in there isn't the same as that in "t0", "t1", etc.tp stores pcpu_info[] and it isn't expected to be changed during (or between) function calls.Oh, right, I forgot about that aspect. However, the more that you reference ...In this structure we are dealing only with registers which should be saved according to RISC-V ABI convention: [1] https://riscv-non-isa.github.io/riscv-elf-psabi-doc/#_integer_register_convention The exception is for RA (as it is also used to jump to continue_to_new_vcpu() when vcpu is scheduled first time). During a review of the [1], I think that GP could be dropped as it shouldn't be preserved across calls.... this - why would gp then need saving? That ought to be stable across Xen as well (or not be used at all)? Totally agree, that why I mentioned in reply that it could (it would be better if "must/should" were used) be dropped as it shouldn't be preserved across calls and as you also notice that it ought to be stable across Xen as well (or not be used at all). ~ Oleksii
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |