Message ID | 20250115143948.369379-2-vaibhav@linux.ibm.com |
---|---|
State | New |
Headers | show |
Series | kvm powerpc/book3s-hv: Expose Hostwide counters as perf-events | expand |
On Wed, Jan 15, 2025 at 08:09:42PM +0530, Vaibhav Jain wrote: > Update kvm-nested APIv2 documentation to include five new > Guest-State-Elements to fetch the hostwide counters. These counters are > per L1-Lpar and indicate the amount of Heap/Page-table memory allocated, > available and Page-table memory reclaimed for all L2-Guests active > instances > > Cc: linux-doc@vger.kernel.org > Cc: linuxppc-dev@lists.ozlabs.org > Cc: Madhavan Srinivasan <maddy@linux.ibm.com> > Cc: Nicholas Piggin <npiggin@gmail.com> > Signed-off-by: Vaibhav Jain <vaibhav@linux.ibm.com> > > --- > Changelog > > v1->v2: > * Reworded section on GSID [Gautam] > --- > Documentation/arch/powerpc/kvm-nested.rst | 40 +++++++++++++++++------ > 1 file changed, 30 insertions(+), 10 deletions(-) > > diff --git a/Documentation/arch/powerpc/kvm-nested.rst b/Documentation/arch/powerpc/kvm-nested.rst > index 5defd13cc6c1..8e468a4db0dc 100644 > --- a/Documentation/arch/powerpc/kvm-nested.rst > +++ b/Documentation/arch/powerpc/kvm-nested.rst > @@ -208,13 +208,9 @@ associated values for each ID in the GSB:: > flags: > Bit 0: getGuestWideState: Request state of the Guest instead > of an individual VCPU. > - Bit 1: takeOwnershipOfVcpuState Indicate the L1 is taking > - over ownership of the VCPU state and that the L0 can free > - the storage holding the state. The VCPU state will need to > - be returned to the Hypervisor via H_GUEST_SET_STATE prior > - to H_GUEST_RUN_VCPU being called for this VCPU. The data > - returned in the dataBuffer is in a Hypervisor internal > - format. > + Bit 1: getHostWideState: Request stats of the Host. This causes > + the guestId and vcpuId parameters to be ignored and attempting > + to get the VCPU/Guest state will cause an error. > Bits 2-63: Reserved > guestId: ID obtained from H_GUEST_CREATE > vcpuId: ID of the vCPU pass to H_GUEST_CREATE_VCPU > @@ -406,9 +402,10 @@ the partition like the timebase offset and partition scoped page > table information. > > +--------+-------+----+--------+----------------------------------+ > -| ID | Size | RW | Thread | Details | > -| | Bytes | | Guest | | > -| | | | Scope | | > +| ID | Size | RW |(H)ost | Details | > +| | Bytes | |(G)uest | | > +| | | |(T)hread| | > +| | | |Scope | | > +========+=======+====+========+==================================+ > | 0x0000 | | RW | TG | NOP element | > +--------+-------+----+--------+----------------------------------+ > @@ -434,6 +431,29 @@ table information. > | | | | |- 0x8 Table size. | > +--------+-------+----+--------+----------------------------------+ > | 0x0007-| | | | Reserved | > +| 0x07FF | | | | | > ++--------+-------+----+--------+----------------------------------+ > +| 0x0800 | 0x08 | R | H | Current usage in bytes of the | > +| | | | | L0's Guest Management Space | > +| | | | | for an L1-Lpar. | > ++--------+-------+----+--------+----------------------------------+ > +| 0x0801 | 0x08 | R | H | Max bytes available in the | > +| | | | | L0's Guest Management Space for | > +| | | | | an L1-Lpar | > ++--------+-------+----+--------+----------------------------------+ > +| 0x0802 | 0x08 | R | H | Current usage in bytes of the | > +| | | | | L0's Guest Page Table Management | > +| | | | | Space for an L1-Lpar | > ++--------+-------+----+--------+----------------------------------+ > +| 0x0803 | 0x08 | R | H | Max bytes available in the L0's | > +| | | | | Guest Page Table Management | > +| | | | | Space for an L1-Lpar | > ++--------+-------+----+--------+----------------------------------+ > +| 0x0804 | 0x08 | R | H | Amount of reclaimed L0 Guest's | > +| | | | | Page Table Management Space due | > +| | | | | to overcommit for an L1-Lpar | Nit s/Amount of reclaimed/Space in bytes reclaimed in > ++--------+-------+----+--------+----------------------------------+ > +| 0x0805-| | | | Reserved | > | 0x0BFF | | | | | > +--------+-------+----+--------+----------------------------------+ > | 0x0C00 | 0x10 | RW | T |Run vCPU Input Buffer: | > -- > 2.47.1 >
diff --git a/Documentation/arch/powerpc/kvm-nested.rst b/Documentation/arch/powerpc/kvm-nested.rst index 5defd13cc6c1..8e468a4db0dc 100644 --- a/Documentation/arch/powerpc/kvm-nested.rst +++ b/Documentation/arch/powerpc/kvm-nested.rst @@ -208,13 +208,9 @@ associated values for each ID in the GSB:: flags: Bit 0: getGuestWideState: Request state of the Guest instead of an individual VCPU. - Bit 1: takeOwnershipOfVcpuState Indicate the L1 is taking - over ownership of the VCPU state and that the L0 can free - the storage holding the state. The VCPU state will need to - be returned to the Hypervisor via H_GUEST_SET_STATE prior - to H_GUEST_RUN_VCPU being called for this VCPU. The data - returned in the dataBuffer is in a Hypervisor internal - format. + Bit 1: getHostWideState: Request stats of the Host. This causes + the guestId and vcpuId parameters to be ignored and attempting + to get the VCPU/Guest state will cause an error. Bits 2-63: Reserved guestId: ID obtained from H_GUEST_CREATE vcpuId: ID of the vCPU pass to H_GUEST_CREATE_VCPU @@ -406,9 +402,10 @@ the partition like the timebase offset and partition scoped page table information. +--------+-------+----+--------+----------------------------------+ -| ID | Size | RW | Thread | Details | -| | Bytes | | Guest | | -| | | | Scope | | +| ID | Size | RW |(H)ost | Details | +| | Bytes | |(G)uest | | +| | | |(T)hread| | +| | | |Scope | | +========+=======+====+========+==================================+ | 0x0000 | | RW | TG | NOP element | +--------+-------+----+--------+----------------------------------+ @@ -434,6 +431,29 @@ table information. | | | | |- 0x8 Table size. | +--------+-------+----+--------+----------------------------------+ | 0x0007-| | | | Reserved | +| 0x07FF | | | | | ++--------+-------+----+--------+----------------------------------+ +| 0x0800 | 0x08 | R | H | Current usage in bytes of the | +| | | | | L0's Guest Management Space | +| | | | | for an L1-Lpar. | ++--------+-------+----+--------+----------------------------------+ +| 0x0801 | 0x08 | R | H | Max bytes available in the | +| | | | | L0's Guest Management Space for | +| | | | | an L1-Lpar | ++--------+-------+----+--------+----------------------------------+ +| 0x0802 | 0x08 | R | H | Current usage in bytes of the | +| | | | | L0's Guest Page Table Management | +| | | | | Space for an L1-Lpar | ++--------+-------+----+--------+----------------------------------+ +| 0x0803 | 0x08 | R | H | Max bytes available in the L0's | +| | | | | Guest Page Table Management | +| | | | | Space for an L1-Lpar | ++--------+-------+----+--------+----------------------------------+ +| 0x0804 | 0x08 | R | H | Amount of reclaimed L0 Guest's | +| | | | | Page Table Management Space due | +| | | | | to overcommit for an L1-Lpar | ++--------+-------+----+--------+----------------------------------+ +| 0x0805-| | | | Reserved | | 0x0BFF | | | | | +--------+-------+----+--------+----------------------------------+ | 0x0C00 | 0x10 | RW | T |Run vCPU Input Buffer: |
Update kvm-nested APIv2 documentation to include five new Guest-State-Elements to fetch the hostwide counters. These counters are per L1-Lpar and indicate the amount of Heap/Page-table memory allocated, available and Page-table memory reclaimed for all L2-Guests active instances Cc: linux-doc@vger.kernel.org Cc: linuxppc-dev@lists.ozlabs.org Cc: Madhavan Srinivasan <maddy@linux.ibm.com> Cc: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Vaibhav Jain <vaibhav@linux.ibm.com> --- Changelog v1->v2: * Reworded section on GSID [Gautam] --- Documentation/arch/powerpc/kvm-nested.rst | 40 +++++++++++++++++------ 1 file changed, 30 insertions(+), 10 deletions(-)