All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "GUO Ren (XuanTie)" <guoren@kernel.org>
Cc: kvm@vger.kernel.org
Subject: Re: [PATCH RFC v4 1/4] RISC-V: paravirt: Add pvqspinlock KVM backend
Date: Mon, 21 Sep 2026 12:35:44 +0000	[thread overview]
Message-ID: <20260921123544.A1BC71F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20260921-pvqspinlock-v4-1-409a22aed6ef@kernel.org>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Critical] kvm: new SBI_EXT_PVLOCK extension is enabled by default breaking migration
--

commit f1e45d3725cd5aab3846041669bc52a712a0d928
Author: GUO Ren (XuanTie) <guoren@kernel.org>

RISC-V: paravirt: Add pvqspinlock KVM backend

Add the KVM backend for the SBI PVLOCK (paravirt qspinlock kick_cpu)
extension. kvm_sbi_ext_pvlock_kick_cpu() kicks the target vCPU out of
the halted state via kvm_vcpu_kick(), and yields to it with
kvm_vcpu_yield_to() when the target is already runnable.

> diff --git a/arch/riscv/kvm/vcpu_sbi_pvlock.c b/arch/riscv/kvm/vcpu_sbi_pvlock.c
> new file mode 100644
> index 0000000000000..728e59f3f18fb
> --- /dev/null
> +++ b/arch/riscv/kvm/vcpu_sbi_pvlock.c
[ ... ]
> +const struct kvm_vcpu_sbi_extension vcpu_sbi_ext_pvlock = {
> +	.extid_start = SBI_EXT_PVLOCK,
> +	.extid_end = SBI_EXT_PVLOCK,
> +	.handler = kvm_sbi_ext_pvlock_handler,
> +};

[Severity: Critical]
Does this extension need to be disabled by default to prevent ABI breakage?

Since vcpu_sbi_ext_pvlock omits .default_disabled, it evaluates to false,
causing KVM to default the extension to KVM_RISCV_SBI_EXT_STATUS_ENABLED
during VM initialization.

Silently enabling new guest-visible KVM features breaks live migration.
Migrating the VM to an older host kernel without this feature will cause
the guest to crash when it attempts to use the extension.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260921-pvqspinlock-v4-0-409a22aed6ef@kernel.org?part=1

  reply	other threads:[~2026-09-21 12:35 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-21 12:27 [PATCH RFC v4 0/4] RISC-V: Add PARAVIRT_SPINLOCKS support GUO Ren (XuanTie)
2026-09-21 12:27 ` GUO Ren (XuanTie)
2026-09-21 12:27 ` GUO Ren (XuanTie)
2026-09-21 12:27 ` [PATCH RFC v4 1/4] RISC-V: paravirt: Add pvqspinlock KVM backend GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:35   ` sashiko-bot [this message]
2026-09-21 12:27 ` [PATCH RFC v4 2/4] RISC-V: paravirt: Add pvqspinlock frontend GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:41   ` sashiko-bot
2026-09-21 12:27 ` [PATCH RFC v4 3/4] RISC-V: paravirt: pvqspinlock: Add trace point for pv_kick/wait GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:39   ` sashiko-bot
2026-09-21 12:27 ` [PATCH RFC v4 4/4] RISC-V: paravirt: Support nopvspin to disable PARAVIRT_SPINLOCKS GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:27   ` GUO Ren (XuanTie)
2026-09-21 12:41   ` sashiko-bot

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=20260921123544.A1BC71F000FF@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=guoren@kernel.org \
    --cc=kvm@vger.kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /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.