[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8b061b2d-7137-498e-93b2-0cb714824d7b@redhat.com>
Date: Tue, 8 Apr 2025 18:57:49 +0200
From: Paolo Bonzini <pbonzini@...hat.com>
To: Sean Christopherson <seanjc@...gle.com>, Joerg Roedel <joro@...tes.org>,
David Woodhouse <dwmw2@...radead.org>, Lu Baolu <baolu.lu@...ux.intel.com>
Cc: kvm@...r.kernel.org, iommu@...ts.linux.dev, linux-kernel@...r.kernel.org,
Maxim Levitsky <mlevitsk@...hat.com>,
Joao Martins <joao.m.martins@...cle.com>, David Matlack <dmatlack@...gle.com>
Subject: Re: [PATCH 26/67] iommu/amd: KVM: SVM: Delete now-unused
cached/previous GA tag fields
On 4/4/25 21:38, Sean Christopherson wrote:
> Delete the amd_ir_data.prev_ga_tag field now that all usage is
> superfluous.
This can be moved much earlier (maybe even after patch 10 from a cursory
look), can't it? I'd do that to clarify what has been cleaned up at
which point.
Paolo
> Signed-off-by: Sean Christopherson <seanjc@...gle.com>
> ---
> arch/x86/kvm/svm/avic.c | 2 --
> drivers/iommu/amd/amd_iommu_types.h | 1 -
> drivers/iommu/amd/iommu.c | 10 ----------
> include/linux/amd-iommu.h | 1 -
> 4 files changed, 14 deletions(-)
>
> diff --git a/arch/x86/kvm/svm/avic.c b/arch/x86/kvm/svm/avic.c
> index 9024b9fbca53..7f0f6a9cd2e8 100644
> --- a/arch/x86/kvm/svm/avic.c
> +++ b/arch/x86/kvm/svm/avic.c
> @@ -943,9 +943,7 @@ int avic_pi_update_irte(struct kvm_kernel_irqfd *irqfd, struct kvm *kvm,
> /**
> * Here, pi is used to:
> * - Tell IOMMU to use legacy mode for this interrupt.
> - * - Retrieve ga_tag of prior interrupt remapping data.
> */
> - pi.prev_ga_tag = 0;
> pi.is_guest_mode = false;
> ret = irq_set_vcpu_affinity(host_irq, &pi);
> } else {
> diff --git a/drivers/iommu/amd/amd_iommu_types.h b/drivers/iommu/amd/amd_iommu_types.h
> index 23caea22f8dc..319a1b650b3b 100644
> --- a/drivers/iommu/amd/amd_iommu_types.h
> +++ b/drivers/iommu/amd/amd_iommu_types.h
> @@ -1060,7 +1060,6 @@ struct irq_2_irte {
> };
>
> struct amd_ir_data {
> - u32 cached_ga_tag;
> struct amd_iommu *iommu;
> struct irq_2_irte irq_2_irte;
> struct msi_msg msi_entry;
> diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c
> index 635774642b89..3c40bc9980b7 100644
> --- a/drivers/iommu/amd/iommu.c
> +++ b/drivers/iommu/amd/iommu.c
> @@ -3858,23 +3858,13 @@ static int amd_ir_set_vcpu_affinity(struct irq_data *data, void *vcpu_info)
> ir_data->cfg = irqd_cfg(data);
> pi_data->ir_data = ir_data;
>
> - pi_data->prev_ga_tag = ir_data->cached_ga_tag;
> if (pi_data->is_guest_mode) {
> ir_data->ga_root_ptr = (vcpu_pi_info->pi_desc_addr >> 12);
> ir_data->ga_vector = vcpu_pi_info->vector;
> ir_data->ga_tag = pi_data->ga_tag;
> ret = amd_iommu_activate_guest_mode(ir_data);
> - if (!ret)
> - ir_data->cached_ga_tag = pi_data->ga_tag;
> } else {
> ret = amd_iommu_deactivate_guest_mode(ir_data);
> -
> - /*
> - * This communicates the ga_tag back to the caller
> - * so that it can do all the necessary clean up.
> - */
> - if (!ret)
> - ir_data->cached_ga_tag = 0;
> }
>
> return ret;
> diff --git a/include/linux/amd-iommu.h b/include/linux/amd-iommu.h
> index 4f433ef39188..deeefc92a5cf 100644
> --- a/include/linux/amd-iommu.h
> +++ b/include/linux/amd-iommu.h
> @@ -19,7 +19,6 @@ struct amd_iommu;
> */
> struct amd_iommu_pi_data {
> u32 ga_tag;
> - u32 prev_ga_tag;
> bool is_guest_mode;
> struct vcpu_data *vcpu_data;
> void *ir_data;
Powered by blists - more mailing lists