All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: stable@vger.kernel.org
Cc: Abdelkareem Abdelsaamad <kareemem@amazon.com>,
	Sasha Levin <sashal@kernel.org>
Subject: Re: [PATCH 5.10.y] KVM: x86: Reject Hyper-V's SEND_IPI hypercalls if local APIC isn't in-kernel
Date: Thu, 13 Mar 2025 08:31:57 -0400	[thread overview]
Message-ID: <20250313052005-ae3baa96896f463d@stable.kernel.org> (raw)
In-Reply-To: <20250312122431.39721-1-kareemem@amazon.com>

[ Sasha's backport helper bot ]

Hi,

✅ All tests passed successfully. No issues detected.
No action required from the submitter.

The upstream commit SHA1 provided is correct: a8de7f100bb5989d9c3627d3a223ee1c863f3b69

WARNING: Author mismatch between patch and upstream commit:
Backport author: Abdelkareem Abdelsaamad<kareemem@amazon.com>
Commit author: Sean Christopherson<seanjc@google.com>

Status in newer kernel trees:
6.13.y | Present (different SHA1: ca29f58ca374)
6.12.y | Present (different SHA1: aca8be4403fb)
6.6.y | Present (different SHA1: 874ff13c73c4)
6.1.y | Present (different SHA1: 5393cf223124)
5.15.y | Present (different SHA1: 8c0bc4fec456)

Note: The patch differs from the upstream commit:
---
1:  a8de7f100bb59 ! 1:  26c34724741d5 KVM: x86: Reject Hyper-V's SEND_IPI hypercalls if local APIC isn't in-kernel
    @@ Metadata
      ## Commit message ##
         KVM: x86: Reject Hyper-V's SEND_IPI hypercalls if local APIC isn't in-kernel
     
    +    commit a8de7f100bb5989d9c3627d3a223ee1c863f3b69 upstream.
    +
         Advertise support for Hyper-V's SEND_IPI and SEND_IPI_EX hypercalls if and
         only if the local API is emulated/virtualized by KVM, and explicitly reject
         said hypercalls if the local APIC is emulated in userspace, i.e. don't rely
    @@ Commit message
         Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
         Link: https://lore.kernel.org/r/20250118003454.2619573-2-seanjc@google.com
         Signed-off-by: Sean Christopherson <seanjc@google.com>
    +    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    +    [Conflict due to
    +    72167a9d7da2 ("KVM: x86: hyper-v: Stop shadowing global 'current_vcpu'
    +    variable")
    +    not in the tree]
    +    Signed-off-by: Abdelkareem Abdelsaamad <kareemem@amazon.com>
     
      ## arch/x86/kvm/hyperv.c ##
    -@@ arch/x86/kvm/hyperv.c: static u64 kvm_hv_send_ipi(struct kvm_vcpu *vcpu, struct kvm_hv_hcall *hc)
    +@@ arch/x86/kvm/hyperv.c: static u64 kvm_hv_send_ipi(struct kvm_vcpu *current_vcpu, u64 ingpa, u64 outgpa,
      	u32 vector;
      	bool all_cpus;
      
    -+	if (!lapic_in_kernel(vcpu))
    ++	if (!lapic_in_kernel(current_vcpu))
     +		return HV_STATUS_INVALID_HYPERCALL_INPUT;
     +
    - 	if (hc->code == HVCALL_SEND_IPI) {
    - 		if (!hc->fast) {
    - 			if (unlikely(kvm_read_guest(kvm, hc->ingpa, &send_ipi,
    -@@ arch/x86/kvm/hyperv.c: int kvm_get_hv_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid2 *cpuid,
    + 	if (!ex) {
    + 		if (!fast) {
    + 			if (unlikely(kvm_read_guest(kvm, ingpa, &send_ipi,
    +@@ arch/x86/kvm/hyperv.c: int kvm_vcpu_ioctl_get_hv_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid2 *cpuid,
      			ent->eax |= HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED;
      			ent->eax |= HV_X64_APIC_ACCESS_RECOMMENDED;
      			ent->eax |= HV_X64_RELAXED_TIMING_RECOMMENDED;
---

Results of testing on various branches:

| Branch                    | Patch Apply | Build Test |
|---------------------------|-------------|------------|
| stable/linux-5.10.y       |  Success    |  Success   |

      reply	other threads:[~2025-03-13 12:31 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-12 12:24 [PATCH 5.10.y] KVM: x86: Reject Hyper-V's SEND_IPI hypercalls if local APIC isn't in-kernel Abdelkareem Abdelsaamad
2025-03-13 12:31 ` Sasha Levin [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250313052005-ae3baa96896f463d@stable.kernel.org \
    --to=sashal@kernel.org \
    --cc=kareemem@amazon.com \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.