[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6979eae9-53c3-5dad-7d3e-d256d5252271@gmail.com>
Date: Wed, 16 Aug 2023 11:29:01 +0800
From: JinrongLiang <ljr.kernel@...il.com>
To: Sean Christopherson <seanjc@...gle.com>,
Jinrong Liang <cloudliang@...cent.com>
Cc: Paolo Bonzini <pbonzini@...hat.com>, Like Xu <likexu@...cent.com>,
Bagas Sanjaya <bagasdotme@...il.com>,
Wanpeng Li <wanpengli@...cent.com>, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3] KVM: x86/pmu: Add documentation for fixed ctr on PMU
filter
Gentle ping.
在 2023/5/31 15:50, Jinrong Liang 写道:
> From: Jinrong Liang <cloudliang@...cent.com>
>
> Update the documentation for the KVM_SET_PMU_EVENT_FILTER ioctl
> to include a detailed description of how fixed performance events
> are handled in the pmu filter. The action and fixed_counter_bitmap
> members of the pmu filter to determine whether fixed performance
> events can be programmed by the guest. This information is helpful
> for correctly configuring the fixed_counter_bitmap and action fields
> to filter fixed performance events.
>
> Suggested-by: Like Xu <likexu@...cent.com>
> Reported-by: kernel test robot <lkp@...el.com>
> Link: https://lore.kernel.org/oe-kbuild-all/202304150850.rx4UDDsB-lkp@intel.com
> Signed-off-by: Jinrong Liang <cloudliang@...cent.com>
> ---
>
> v3:
> - Rebased to 5c291b93e5d6(tag: kvm-x86-next-2023.04.26)
> - Revise documentation to enhance user understanding. (Sean)
> - Post this patch separately from the selftests changes. (Sean)
>
> v2:
> - Wrap the code from the documentation in a block of code; (Bagas Sanjaya)
>
> v1:
> https://lore.kernel.org/kvm/20230414110056.19665-5-cloudliang@tencent.com
>
> Documentation/virt/kvm/api.rst | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/Documentation/virt/kvm/api.rst b/Documentation/virt/kvm/api.rst
> index a69e91088d76..9f680eb89b2b 100644
> --- a/Documentation/virt/kvm/api.rst
> +++ b/Documentation/virt/kvm/api.rst
> @@ -5122,6 +5122,24 @@ Valid values for 'action'::
> #define KVM_PMU_EVENT_ALLOW 0
> #define KVM_PMU_EVENT_DENY 1
>
> +Via this API, KVM userspace can also control the behavior of the VM's fixed
> +counters (if any) by configuring the "action" and "fixed_counter_bitmap" fields.
> +
> +Specifically, KVM follows the following pseudo-code when determining whether to
> +allow the guest FixCtr[i] to count its pre-defined fixed event::
> +
> + FixCtr[i]_is_allowed = (action == ALLOW) && (bitmap & BIT(i)) ||
> + (action == DENY) && !(bitmap & BIT(i));
> + FixCtr[i]_is_denied = !FixCtr[i]_is_allowed;
> +
> +KVM always consumes fixed_counter_bitmap, it's userspace's responsibility to
> +ensure fixed_counter_bitmap is set correctly, e.g. if userspace wants to define
> +a filter that only affects general purpose counters.
> +
> +Note, the "events" field also applies to fixed counters' hardcoded event_select
> +and unit_mask values. "fixed_counter_bitmap" has higher priority than "events"
> +if there is a contradiction between the two.
> +
> 4.121 KVM_PPC_SVM_OFF
> ---------------------
>
>
> base-commit: 5c291b93e5d665380dbecc6944973583f9565ee5
Powered by blists - more mailing lists