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

Re: [PATCH v16 1/4] xen/domain: unify domain ID allocation


  • To: Jan Beulich <jbeulich@xxxxxxxx>, <dmkhn@xxxxxxxxx>
  • From: Alejandro Vallejo <alejandro.garciavallejo@xxxxxxx>
  • Date: Thu, 21 Aug 2025 12:29:23 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=suse.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0)
  • 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=rCAyBh25oMyrEI1SxPIJBZ7ukAh9YLvSliv5AIUtm3Y=; b=cDLdqLQviNived1rX2ZG0Ea4YXhC9kU/2hnSwtPeQQFgUbbmfTbRbHyJumI15CRsNW/eDEEUCiYBrev04nBHYcBqLjvNks/N8bD0yqIgaVjS+Pk0Ay8RmWM7yDfM0rUETqLsyqmA8XvDU82xgkXyFqaJBt80Hhf4TgH128m2mTV+2hZ0QE5LEa+efSEPzgPlpQEsgzIHiUB+Saz5G1XtlG1Pbw2WMKYZYlBkFht7wZv2Y7L+7tFVciveXQFOl/MnhsFB60Xtyl9rvOQE4Kh2GWiFjBEkbimIMUjPn8zalafdggJedNJuywZ33E4ZPuOs94RybAKiB75d3mlx42TEkQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=fyjOvuECjI+w5nQ99/M/NG3Gidho+V9srtti5hrpYxdBFVXjYdFnm8JxIAQEYfKzRtwM3TVSDDtqdIX3zvE9irtqZVdCqOAgCMO8mplLRGFVHXnhlzHWUw6Xogss9IJ/033oki1Eiw/M0oHK6tg/oyUDUnFXzcJy0yzyseYRbJBjz4hbi5FphqlWMJFPiCUnUWpU1oyVp6NIUi0s+OsTqsCqJP2HGqQVESTxzt5soxgWTS6QhDDCOGQmG2qz7JUNSc6iGM51Nta/iX52Le13sI+l+fdCTJGKdHjxN4V5dj51mKCNs7lkja1VVgfxYt2tm75DbCjCMgLQoU9/sY0qXQ==
  • Cc: <andrew.cooper3@xxxxxxxxxx>, <anthony.perard@xxxxxxxxxx>, <julien@xxxxxxx>, <michal.orzel@xxxxxxx>, <roger.pau@xxxxxxxxxx>, <sstabellini@xxxxxxxxxx>, <dmukhin@xxxxxxxx>, Julien Grall <jgrall@xxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Thu, 21 Aug 2025 10:29:51 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Thu Aug 21, 2025 at 9:16 AM CEST, Jan Beulich wrote:
> On 20.08.2025 01:58, dmkhn@xxxxxxxxx wrote:
>> On Thu, Aug 14, 2025 at 09:11:11AM +0200, Jan Beulich wrote:
>>> On 13.08.2025 00:30, dmkhn@xxxxxxxxx wrote:
>>>> From: Denis Mukhin <dmukhin@xxxxxxxx>
>>>>
>>>> Currently, there are two different domain ID allocation implementations:
>>>>
>>>>   1) Sequential IDs allocation in dom0less Arm code based on 
>>>> max_init_domid;
>>>>
>>>>   2) Sequential IDs allocation in XEN_DOMCTL_createdomain; does not use
>>>>      max_init_domid (both Arm and x86).
>>>>
>>>> The domain ID allocation covers dom0 or late hwdom, predefined domains,
>>>> post-boot domains, excluding Xen system domains (domid >=
>>>> DOMID_FIRST_RESERVED).
>>>>
>>>> It makes sense to have a common helper code for such task across 
>>>> architectures
>>>> (Arm and x86) and between dom0less / toolstack domU allocation.
>>>>
>>>> Note, fixing dependency on max_init_domid is out of scope of this patch.
>>>>
>>>> Wrap the domain ID allocation as an arch-independent function 
>>>> domid_alloc() in
>>>> new common/domid.c based on the bitmap.
>>>>
>>>> Allocation algorithm:
>>>> - If an explicit domain ID is provided, verify its availability and use it 
>>>> if
>>>>   ID is not used;
>>>> - If DOMID_INVALID is provided, search the range 
>>>> [1..DOMID_FIRST_RESERVED-1],
>>>>   starting from the last used ID.
>>>>   Implementation guarantees that two consecutive calls will never return 
>>>> the
>>>>   same ID. ID#0 is reserved for the first boot domain (currently, dom0) and
>>>>   excluded from the allocation range.
>>>>
>>>> Remove is_free_domid() helper as it is not needed now.
>>>>
>>>> No functional change intended.
>>>>
>>>> Signed-off-by: Denis Mukhin <dmukhin@xxxxxxxx>
>>>> Reviewed-by: Julien Grall <jgrall@xxxxxxxxxx>
>>>> Reviewed-by: Alejandro Vallejo <alejandro.garciavallejo@xxxxxxx>
>>>> ---
>>>> Changes since v15:
>>>> - fixup for check after the first pass in the bitarray in domid_alloc()
>>>> - trivial renaming for the local variable in domid_alloc()
>>>> - kept Julien's R-b, added Alejandro's R-b
>>>
>>> Just to mention: My take is that this kind of a fix ought to invalidate all
>>> earlier R-b. It's not just a cosmetic change, after all.
>> 
>> Sorry for the hiccup here, did not mean to overrule the review process.
>> 
>> My bold assumption was that in case of small fixups like this it is
>> satisfactory to carry over previous acks.
>
> Acks may be okay to keep, but imo R-b need dropping when an actual bug was
> fixed.

I don't know. Unless the bugfix involves a change in the code with wide reaching
consequences I'd say it's reasonable to keep them. But that's something for you
(the committers) to decide, and this just my .02 cents.

> Irrespective of how severe the bug was.

It's not so much about the severity (imo), as the behavioural differences
involved in the fixup. In this case (afaics?) it's a straight s/==/>=/, which is
self-contained and has no wide-reaching side effects at all.

>
>> I asked (matrix) both Julien and Alejandro to re-review and confirm.
>
> While good to ask, that's of limited use. It'll be impossible later on to
> figure whether such a confirmation was given. Decisions (and acks and alike
> effectively fall into that category) need to be on the list, to be able to
> locate them later on.
>
> Jan

He meant he reached out to ask for an in-list confirmation. As far as I'm
concerned, my R-by still holds.

Cheers,
Alejandro



 


Rackspace

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