From: Roman Kisel <romank@linux.microsoft.com>
To: Saurabh Singh Sengar <ssengar@microsoft.com>,
Wei Liu <wei.liu@kernel.org>
Cc: "bp@alien8.de" <bp@alien8.de>,
"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
Dexuan Cui <decui@microsoft.com>,
Haiyang Zhang <haiyangz@microsoft.com>,
"hpa@zytor.com" <hpa@zytor.com>,
KY Srinivasan <kys@microsoft.com>,
"mikelley@microsoft.com" <mikelley@microsoft.com>,
"mingo@redhat.com" <mingo@redhat.com>,
"tglx@linutronix.de" <tglx@linutronix.de>,
Tianyu Lan <Tianyu.Lan@microsoft.com>,
"linux-hyperv@vger.kernel.org" <linux-hyperv@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"x86@kernel.org" <x86@kernel.org>,
Allen Pais <apais@microsoft.com>,
Ben Hillis <Ben.Hillis@microsoft.com>,
Brian Perkins <Brian.Perkins@microsoft.com>,
Sunil Muthuswamy <sunilmut@microsoft.com>
Subject: Re: [EXTERNAL] Re: [PATCH hyperv-next] x86/hyperv: Fix APIC ID and VP ID confusion in hv_snp_boot_ap()
Date: Fri, 25 Apr 2025 11:22:08 -0700 [thread overview]
Message-ID: <c57c6ce9-6ff8-431c-ab77-fa2c727fee09@linux.microsoft.com> (raw)
In-Reply-To: <KUZP153MB14448BEFA81251661433CE33BE842@KUZP153MB1444.APCP153.PROD.OUTLOOK.COM>
On 4/25/2025 10:18 AM, Saurabh Singh Sengar wrote:
>
>> On 4/25/2025 2:14 AM, Saurabh Singh Sengar wrote:
>>>>
>>>> On Thu, Apr 24, 2025 at 02:57:46PM -0700, Roman Kisel wrote:
>>>>> To start an application processor in SNP-isolated guest, a hypercall
>>>>> is used that takes a virtual processor index. The hv_snp_boot_ap()
>>>>> function uses that START_VP hypercall but passes as VP ID to it what
>>>>> it receives as a wakeup_secondary_cpu_64 callback: the APIC ID.
>>>>>
>>>>> As those two aren't generally interchangeable, that may lead to hung
>>>>> APs if VP IDs and APIC IDs don't match, e.g. APIC IDs might be
>>>>> sparse whereas VP IDs never are.
>>>>>
>>>>> Update the parameter names to avoid confusion as to what the
>>>>> parameter is. Use the APIC ID to VP ID conversion to provide correct
>>>>> input to the hypercall.
>>>>>
>>>>> Cc: stable@vger.kernel.org
>>>>> Fixes: 44676bb9d566 ("x86/hyperv: Add smp support for SEV-SNP
>>>>> guest")
>>>>> Signed-off-by: Roman Kisel <romank@linux.microsoft.com>
>>>>
>>>> Applied to hyperv-fixes.
>>>
>>> This patch will break the builds.
>>>
>>> Roman,
>>> Have you tested this patch on the latest linux-next ?
>>
>> Thanks for your help! Only on hyperv-next, looking how to repro and fix on
>> linux-next. The kernel robot was happy, or I am missing some context about
>> how the robot works...
>>
>> What was your kernel configuration, or just anything that enables Hyper-V?
>>
>> I thought the the linux-next tree would be a subset of hyper-next so should
>> work, realizing that have to check, likely there might be changes from other
>> trees.
>>
>
>
> hyperv-fixes is broken too, here's the log for your ref:
>
> https://dashboard.kernelci.org/log-viewer?itemId=microsoft%3A20250425085833916790&o=microsoft&type=build&url=https%3A%2F%2Flisalogsb15850d3.blob.core.windows.net%2Flisa-logs%2Fdefault_default%2F20250425%2F20250425-085110-393%2Fkernel_installer%2Fbuild.log%3Fst%3D2025-04-25T09%253A09%253A35Z%26se%3D2025-05-02T09%253A09%253A35Z%26sp%3Dr%26sv%3D2024-11-04%26sr%3Db%26skoid%3D14b53b1d-f4fc-442e-a437-4989376b1754%26sktid%3D72f988bf-86f1-41af-91ab-2d7cd011db47%26skt%3D2025-04-25T09%253A09%253A35Z%26ske%3D2025-05-02T09%253A09%253A35Z%26sks%3Db%26skv%3D2024-11-04%26sig%3DZHfA7%2FC174KR6HT8zhchCb47NE1aceqw8h0APzKxsII%253D
>
> The hv_snp_boot_ap() function in arch/x86/hyperv/ivm.c currently fails to compile.
> It looks like the function's argument was changed from 'cpu' to 'apic_id', but internal
> references to cpu were not updated accordingly.
>
> This might have gone unnoticed during your testing if CONFIG_AMD_MEM_ENCRYPT
> was disabled, in which case this function wouldn't have been compiled.
Must be the case! I did run the command to merge the CVM specific config
options but I didn't check the result.
Yep, I see the issue. Will resend the patch.
>
> Regards,
> Saurabh
--
Thank you,
Roman
next prev parent reply other threads:[~2025-04-25 18:22 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-24 21:57 [PATCH hyperv-next] x86/hyperv: Fix APIC ID and VP ID confusion in hv_snp_boot_ap() Roman Kisel
2025-04-25 6:15 ` Wei Liu
2025-04-25 9:14 ` [EXTERNAL] " Saurabh Singh Sengar
2025-04-25 16:43 ` Roman Kisel
2025-04-25 17:18 ` Saurabh Singh Sengar
2025-04-25 18:22 ` Roman Kisel [this message]
2025-04-25 21:12 ` Wei Liu
2025-04-28 17:26 ` Roman Kisel
2025-04-25 15:12 ` Michael Kelley
2025-04-25 16:35 ` Roman Kisel
2025-04-25 16:55 ` Michael Kelley
2025-04-28 0:48 ` Wei Liu
2025-04-28 17:29 ` Roman Kisel
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=c57c6ce9-6ff8-431c-ab77-fa2c727fee09@linux.microsoft.com \
--to=romank@linux.microsoft.com \
--cc=Ben.Hillis@microsoft.com \
--cc=Brian.Perkins@microsoft.com \
--cc=Tianyu.Lan@microsoft.com \
--cc=apais@microsoft.com \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=decui@microsoft.com \
--cc=haiyangz@microsoft.com \
--cc=hpa@zytor.com \
--cc=kys@microsoft.com \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mikelley@microsoft.com \
--cc=mingo@redhat.com \
--cc=ssengar@microsoft.com \
--cc=sunilmut@microsoft.com \
--cc=tglx@linutronix.de \
--cc=wei.liu@kernel.org \
--cc=x86@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.