[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 10/15] spapr: nested: Initialize the GSB elements lookup t
From: |
Nicholas Piggin |
Subject: |
Re: [PATCH v4 10/15] spapr: nested: Initialize the GSB elements lookup table. |
Date: |
Tue, 27 Feb 2024 20:02:57 +1000 |
On Tue Feb 20, 2024 at 6:36 PM AEST, Harsh Prateek Bora wrote:
> Nested PAPR API provides a standard Guest State Buffer (GSB) format
> with unique IDs for each guest state element for which get/set state is
> supported by the API. Some of the elements are read-only and/or guest-wide.
> Introducing helper routines for state exchange of each of the nested guest
> state elements for which get/set state should be supported by the API.
>
This is doing more than just adding helper routines for the GSB access.
[snip]
> +
> typedef struct SpaprMachineStateNested {
> uint64_t ptcr;
> uint8_t api;
> @@ -16,6 +201,8 @@ typedef struct SpaprMachineStateNested {
> typedef struct SpaprMachineStateNestedGuest {
> uint32_t pvr_logical;
> unsigned long vcpus;
> + uint64_t parttbl[2];
> + uint64_t tb_offset;
> struct SpaprMachineStateNestedGuestVcpu *vcpu;
> } SpaprMachineStateNestedGuest;
>
[snip]
>
> /*
> * Register state for entering a nested guest with H_ENTER_NESTED.
> @@ -172,17 +452,40 @@ struct nested_ppc_state {
> uint64_t sier;
> uint32_t vscr;
> uint64_t fpscr;
> + int64_t dec_expiry_tb;
> +};
> +
> +struct SpaprMachineStateNestedGuestVcpuRunBuf {
> + uint64_t addr;
> + uint64_t size;
> };
>
> typedef struct SpaprMachineStateNestedGuestVcpu {
> bool enabled;
> struct nested_ppc_state state;
> + struct SpaprMachineStateNestedGuestVcpuRunBuf runbufin;
> + struct SpaprMachineStateNestedGuestVcpuRunBuf runbufout;
> + int64_t tb_offset;
> + uint64_t hdecr_expiry_tb;
> } SpaprMachineStateNestedGuestVcpu;
It's adding new fields in existing nested guest state
structures. This should be explained a bit more, split into
another patch, or moved to patches where they get used.
Thanks,
Nick
- Re: [PATCH v4 08/15] spapr: nested: Introduce H_GUEST_CREATE_VCPU hcall., (continued)
[PATCH v4 11/15] spapr: nested: Introduce H_GUEST_[GET|SET]_STATE hcalls., Harsh Prateek Bora, 2024/02/20
[PATCH v4 10/15] spapr: nested: Initialize the GSB elements lookup table., Harsh Prateek Bora, 2024/02/20
- Re: [PATCH v4 10/15] spapr: nested: Initialize the GSB elements lookup table.,
Nicholas Piggin <=
[PATCH v4 03/15] spapr: nested: Introduce SpaprMachineStateNested to store related info., Harsh Prateek Bora, 2024/02/20
[PATCH v4 14/15] spapr: nested: Introduce cap-nested-papr for Nested PAPR API, Harsh Prateek Bora, 2024/02/20
[PATCH v4 12/15] spapr: nested: Use correct source for parttbl info for nested PAPR API., Harsh Prateek Bora, 2024/02/20
[PATCH v4 15/15] spapr: nested: Set the PCR when logical PVR is set, Harsh Prateek Bora, 2024/02/20
[PATCH v4 07/15] spapr: nested: Introduce H_GUEST_[CREATE|DELETE] hcalls., Harsh Prateek Bora, 2024/02/20
[PATCH v4 13/15] spapr: nested: Introduce H_GUEST_RUN_VCPU hcall., Harsh Prateek Bora, 2024/02/20