[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v5 0/5] Implement CPU hotplug on Arm


  • To: Mykyta Poturai <Mykyta_Poturai@xxxxxxxx>
  • From: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>
  • Date: Wed, 4 Feb 2026 13:02:36 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=epam.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com])
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none
  • Arc-message-signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1ivlrthExOPETeyvE/sfWrfednquKuze7PRxAG3QgN4=; b=Ol9U4lSsmTfGnoKZvSAIFISvwY0KCnsXHRthTwuJXPjQmeAtCz3Aq8C1vaty4vvI8M8d0YT4Y9GgKYE6d3yHETltgC8rehipXJXNGLvtFHnMZLcQS426EuX3rCwyNr798b1hfDskXOS2mJNM9CurJgN4gz4TofOVNT/I8RqtJK9RdO4litJDqU9kRXL6RSlI8N+qD0vyZ5EMnqnUb5+jRg/RqaEeITj3QVPyGdsI68vkf9G7J1BAeZnXXGzpG7ol+E8ewWK2AOe1toV9bbiaMpGpzFEcsgArZCcYgrPXLbSBVgQj2uIx3/xgGknsBfVx6jfpiXh2UE3JTRwbo1/A/w==
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=1ivlrthExOPETeyvE/sfWrfednquKuze7PRxAG3QgN4=; b=b5yWUibu8d/tyFtkv8cBkdvDLDSAtJN2DaRUkuj8DQUhu9/rO7TZQsdulIKvqW3UNGBNOaTQIzEgG+Wckvank+/85B1o19gQPTKEAuZcv9InN5eyfxIcTDxUnwEBUT2t/LnMW4yZS+KCEdHqZDizsCGE0jdhH/PPh9cgBm1GCq3fUey9vR0NShgTHUl+ebTskS/lOIh4gfG77vKwBNwV2ZgVitE/ZlPa1cePtdrM60SpSviWII8uW1X7M6Tu4BAyvGGtJb4PFeEl4vDKppajTFMmuwQBhcfwxv2kYBG1De9mka2gi1yroSvf/Ee2ixMyyJTDOfd+DqrYl7QycJu6iw==
  • Arc-seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=CT83iqJXR4FC5RhwmRjFfkbawZ2gJzlpDNzylYm3qXvzaZOi6kmKldTp2L8jooljsnQ/3eyNCcAJNRjnMtRCrvyQgqQk2JZBMzuIbBgm3jw9EJnggt6oPprYPENu5c2Nll8TNdfnuY5s2876wRS5v8UAp3AVeTr6NmTQPopG6pYENZIZ4JObnWm5lGp/upOgBSlA/i9rMc4NBGePkejzV7Mbe+qw7NVLBb90oR44A9ZXTUoVHzG0b1nL+arsDc0bKinKvKlgAgTATcjc2qgkovVWr4FGimviVO6GwSCcrW+2KIzV85GyrNkFPDM/uEq+llrEQIJ8+Yl/POVjSfuoTw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dqqmWjKqCjxtFwcBSrrySq/hpYh+f6teZuMliUnjGPkInyg7JRP33GewU5WFDFwxJA49WQDKacUNulCE5mYE8SCe2wXJTSPH/q2PInEWBlwYXVHRBeaYwH4cDt1Bz/MtJDJnAuXu/Tpdjanvz4VoYMHakE/Bg2e43vm7VF6t5vYtbgoFgt27aZuXHZQeSg4b8D7hY7dTFo4lHssqKGRicoPDCt9qlSMURGNUr3vA4zbCZuRCB/rsGwkGIpmhkrOnK1IRGBbiFfF1Mdf9AWzFfraTOV5v4zg86e2LpX0pvVm+rrTrROQ+0VjHw8cgQMFUJenWASX+/9bq1T+mBz8l9Q==
  • Authentication-results-original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com;
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Timothy Pearson <tpearson@xxxxxxxxxxxxxxxxxxxxx>, Alistair Francis <alistair.francis@xxxxxxx>, Connor Davis <connojdavis@xxxxxxxxx>, Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>, "Daniel P. Smith" <dpsmith@xxxxxxxxxxxxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>
  • Delivery-date: Wed, 04 Feb 2026 13:04:02 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Nodisclaimer: true
  • Thread-index: AQHchGj6Bf8iLxj9KkKeGyrpjQwglLVxTT0AgAFV7wCAAAEEAA==
  • Thread-topic: [PATCH v5 0/5] Implement CPU hotplug on Arm

Hi Mykyta,

> On 4 Feb 2026, at 13:58, Mykyta Poturai <Mykyta_Poturai@xxxxxxxx> wrote:
> 
> On 03.02.26 18:35, Bertrand Marquis wrote:
>> Hi Mykyta,
>> 
>>> On 13 Jan 2026, at 09:45, Mykyta Poturai <Mykyta_Poturai@xxxxxxxx> wrote:
>>> 
>>> This series implements support for CPU hotplug/unplug on Arm. To achieve 
>>> this,
>>> several things need to be done:
>>> 
>>> 1. XEN_SYSCTL_CPU_HOTPLUG_* calls implemented on Arm64.
>>> 2. Enabled building of xen-hptool.
>>> 3. Migration of irqs from dying CPUs implemented.
>>> 
>>> Tested on QEMU.
>> 
>> Do you have a way to validate this on real hardware ?
>> Doing hotplug/unplug might have side effects (caches, coherency, interrupts, 
>> etc) that
>> I would not be completely confident to have validated by only testing this 
>> in qemu.
>> 
>> Could you explain how you validated this (what kind of tests you did).
>> 
>> I would be interested to know how the system behave in the following cases:
>> - stopping cpu with guests pinned to specific cores
>> - stopping a cpu with a guest pinned and only running on that one
>> - checking with passthrough devices (for irq balancing)
>> 
>> Then a general remark i have is that most of this code (if not all) is 
>> always in Xen
>> even if CONFIG_CPU_HOTPLUG is not activated in xen config which will probably
>> generate some dead code. Could we protect some of the code not used when
>> HOTPLUG is not activated with if (is_enabled(CONFIG_CPU_HOTPLUG)) or
>> equivalent forms ?
>> 
>> Cheers
>> Bertrand
>> 
> 
> Hi Bertrand
> 
> I’ve tested various pinning scenarios, and all of them work fine, as Xen 
> forcibly unpins everything that was pinned to the offlined CPU.
> I’ve also explicitly checked that interrupts are getting moved to and 
> from cores when needed.
> 
> I will update the next cover letter to explain testing better and also 
> try to test on some hardware to be sure.

Thanks.

> 
> Can you please elaborate a little on what exactly you mean by “checking 
> with passthrough devices”? I suspect I am not fully getting the idea.

If a guest has an hardware device assigned using passthrough and one of
its core is removed, is the guest and hardware device continue to work
well after ?

Cheers
Bertrand

> 
> 
> -- 
> Mykyta



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.