From: Alejandro Vallejo <agarciav@amd.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: "Alistair Francis" <alistair.francis@wdc.com>,
"Bob Eshleman" <bobbyeshleman@gmail.com>,
"Connor Davis" <connojdavis@gmail.com>,
"Oleksii Kurochko" <oleksii.kurochko@gmail.com>,
"Andrew Cooper" <andrew.cooper3@citrix.com>,
"Anthony PERARD" <anthony.perard@vates.tech>,
"Michal Orzel" <michal.orzel@amd.com>,
"Julien Grall" <julien@xen.org>,
"Roger Pau Monné" <roger.pau@citrix.com>,
"Stefano Stabellini" <sstabellini@kernel.org>,
"Daniel P. Smith" <dpsmith@apertussolutions.com>,
xen-devel@lists.xenproject.org
Subject: Re: [PATCH 06/19] xen: Clean up asm-generic/device.h
Date: Thu, 5 Jun 2025 18:48:08 +0200 [thread overview]
Message-ID: <DAER4E9ML3N6.3IR8V47ATEDZL@amd.com> (raw)
In-Reply-To: <8768b970-6c62-4fc4-8ef5-b74f1aa650e6@suse.com>
On Thu Jun 5, 2025 at 4:20 PM CEST, Jan Beulich wrote:
> On 05.06.2025 16:15, Alejandro Vallejo wrote:
>> On Mon Jun 2, 2025 at 4:24 PM CEST, Jan Beulich wrote:
>>> On 02.06.2025 16:19, Alejandro Vallejo wrote:
>>>> On Mon Jun 2, 2025 at 9:51 AM CEST, Jan Beulich wrote:
>>>>> On 30.05.2025 14:02, Alejandro Vallejo wrote:
>>>>>> --- a/xen/include/asm-generic/device.h
>>>>>> +++ b/xen/include/asm-generic/device.h
>>>>>> @@ -6,9 +6,7 @@
>>>>>>
>>>>>> enum device_type
>>>>>> {
>>>>>> -#ifdef CONFIG_HAS_DEVICE_TREE
>>>>>> DEV_DT,
>>>>>> -#endif
>>>>>
>>>>> Why would this enumerator need exposing on a non-DT arch? In fact I would have
>>>>> hoped for ...
>>>>
>>>> A non-DT arch would not include this. x86 doesn't.
>>>
>>> Both here and ...
>>>
>>>>>> DEV_PCI
>>>>>
>>>>> ... this to be hidden for arch-es not supporting PCI.
>>>>>
>>>>> Similar concerns elsewhere in this change.
>>>>
>>>> This file is exclusively used by arches supporting DT to abstract away where
>>>> the device came from. x86 does not use it at all, and while it wouldn't be
>>>> impossible to compile-out DEV_PCI, it would needlessly pollute the codebase with
>>>> no measurable gain, because the abstractions still need to stay.
>>>
>>> ... here: In "xen/include/asm-generic/device.h" there's nothing at all saying
>>> that this file is a DT-only one. Instead there is something in there saying
>>> that it's suitable to use in the entirely "generic" case.
>>>
>>> Jan
>>
>> Try to use it from x86 and observe the build system catch fire. It could be made
>> to not go on fire, but it implies heavy refactoring in x86 (particularly IOMMU
>> code) for no good reason because there's no devices in a DTB to disambiguate.
>>
>> How about adding this to the top of the header?
>>
>> ```
>> /*
>> * This header helps DTB-based architectures abstract away where a particular
>> * device comes from; be it the DTB itself or enumerated on a PCI bus.
>> */
>>
>> [snip]
>>
>> #ifndef CONFIG_HAS_DEVICE_TREE
>> #error "Header meant to be used exclusively by DTB-base architectures."
>> #endif
>> ```
>
> Might be fine, together with giving the file a name somewhat referring to DT.
>
> Jan
That would bring it out of sync with x86's asm/device.h. Both of them define
device_t and doing so in differently named headers would just be confusing for
everyone.
Cheers,
Alejandro
next prev parent reply other threads:[~2025-06-05 16:48 UTC|newest]
Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-21 14:35 Hyperlaunch/dom0less code sharing Alejandro Vallejo
2025-05-21 14:42 ` Jan Beulich
2025-05-21 21:07 ` Stefano Stabellini
2025-05-21 15:31 ` Daniel P. Smith
2025-05-21 17:32 ` Daniel P. Smith
2025-05-22 12:02 ` Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 00/19] Allow x86 to unflatten DTs Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 01/19] licence: Add missing SPDX line to bootfdt.h Alejandro Vallejo
2025-05-30 12:41 ` Orzel, Michal
2025-05-30 12:02 ` [PATCH 02/19] x86: Add missing pci_dev forward declaration in asm/pci.h Alejandro Vallejo
2025-05-30 21:04 ` Jason Andryuk
2025-06-02 13:45 ` Alejandro Vallejo
2025-06-02 16:40 ` Jason Andryuk
2025-05-31 0:42 ` Stefano Stabellini
2025-06-02 7:48 ` Jan Beulich
2025-06-02 14:01 ` Alejandro Vallejo
2025-06-02 14:19 ` Jan Beulich
2025-05-30 12:02 ` [PATCH 03/19] riscv: Add missing forward declaration to intc.h Alejandro Vallejo
2025-05-31 0:43 ` Stefano Stabellini
2025-05-30 12:02 ` [PATCH 04/19] xen: Add missing forward declaration to btcpupools_get_domain_pool_id Alejandro Vallejo
2025-05-31 0:46 ` Stefano Stabellini
2025-06-02 14:05 ` Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 05/19] arm: Remove dependencies with membank(s) definitions from setup.h Alejandro Vallejo
2025-05-31 0:51 ` Stefano Stabellini
2025-06-02 14:07 ` Alejandro Vallejo
2025-06-05 13:28 ` Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 06/19] xen: Clean up asm-generic/device.h Alejandro Vallejo
2025-05-31 0:55 ` Stefano Stabellini
2025-06-02 7:51 ` Jan Beulich
2025-06-02 14:19 ` Alejandro Vallejo
2025-06-02 14:24 ` Jan Beulich
2025-06-05 14:15 ` Alejandro Vallejo
2025-06-05 14:20 ` Jan Beulich
2025-06-05 16:48 ` Alejandro Vallejo [this message]
2025-06-06 6:24 ` Jan Beulich
2025-05-30 12:02 ` [PATCH 07/19] arm/gnttab: Break cycle between asm/grant_table.h and xen/grant_table.h Alejandro Vallejo
2025-05-30 21:04 ` Jason Andryuk
2025-05-31 0:57 ` Stefano Stabellini
2025-06-02 14:20 ` Alejandro Vallejo
2025-06-02 7:53 ` Jan Beulich
2025-06-02 14:30 ` Alejandro Vallejo
2025-06-02 14:51 ` Jan Beulich
2025-06-02 16:39 ` Alejandro Vallejo
2025-06-03 7:04 ` Jan Beulich
2025-06-05 17:22 ` Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 08/19] xen/dt: Add BOOTMOD_MICROCODE Alejandro Vallejo
2025-05-31 0:59 ` Stefano Stabellini
2025-06-05 17:24 ` Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 09/19] x86: Preinitialise all modules to be of kind BOOTMOD_UNKNOWN Alejandro Vallejo
2025-05-31 1:07 ` Stefano Stabellini
2025-06-02 7:55 ` Jan Beulich
2025-06-05 17:24 ` Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 10/19] x86: Replace boot_module with bootmodule Alejandro Vallejo
2025-05-31 1:15 ` Stefano Stabellini
2025-06-02 16:31 ` Alejandro Vallejo
2025-06-02 17:00 ` Andrew Cooper
2025-06-05 17:28 ` Alejandro Vallejo
2025-06-05 17:40 ` Alejandro Vallejo
2025-06-06 6:56 ` Jan Beulich
2025-06-06 20:14 ` Stefano Stabellini
2025-05-30 12:02 ` [PATCH 11/19] x86: Replace boot_domain with kernel_info Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 12/19] xen/dt: Move bootfdt functions to xen/bootfdt.h Alejandro Vallejo
2025-05-31 0:35 ` dmkhn
2025-06-02 7:29 ` Orzel, Michal
2025-06-03 0:38 ` dmkhn
2025-06-02 16:41 ` Alejandro Vallejo
2025-06-03 0:42 ` dmkhn
2025-05-31 1:31 ` Stefano Stabellini
2025-05-31 1:40 ` Stefano Stabellini
2025-06-02 20:25 ` Daniel P. Smith
2025-06-05 18:03 ` Alejandro Vallejo
2025-06-05 23:19 ` Stefano Stabellini
2025-06-17 1:32 ` Daniel P. Smith
2025-05-30 12:02 ` [PATCH 13/19] xen/dt: Move bootinfo functions to a new bootinfo.h Alejandro Vallejo
2025-05-31 1:42 ` Stefano Stabellini
2025-06-05 18:04 ` Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 14/19] xen/dt: Rename bootfdt.c -> bootinfo-fdt.c Alejandro Vallejo
2025-05-31 1:44 ` Stefano Stabellini
2025-05-30 12:02 ` [PATCH 15/19] xen/dt: Move bootinfo-independent helpers out of bootinfo-fdt.c Alejandro Vallejo
2025-05-31 0:39 ` dmkhn
2025-06-05 18:11 ` Alejandro Vallejo
2025-05-31 1:47 ` Stefano Stabellini
2025-06-02 8:00 ` Jan Beulich
2025-05-30 12:02 ` [PATCH 16/19] xen/dt: Extract helper to map nodes to module kinds Alejandro Vallejo
2025-05-31 1:48 ` Stefano Stabellini
2025-05-30 12:02 ` [PATCH 17/19] xen/dt: ifdef out DEV_DT-related bits from device_tree.{c,h} Alejandro Vallejo
2025-05-30 12:02 ` [PATCH 18/19] xen/dt: Allow CONFIG_DOM0LESS_BOOT to include device-tree/ Alejandro Vallejo
2025-05-30 12:05 ` [PATCH 19/19] kconfig: Allow x86 to pick CONFIG_DOM0LESS_BOOT Alejandro Vallejo
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=DAER4E9ML3N6.3IR8V47ATEDZL@amd.com \
--to=agarciav@amd.com \
--cc=alistair.francis@wdc.com \
--cc=andrew.cooper3@citrix.com \
--cc=anthony.perard@vates.tech \
--cc=bobbyeshleman@gmail.com \
--cc=connojdavis@gmail.com \
--cc=dpsmith@apertussolutions.com \
--cc=jbeulich@suse.com \
--cc=julien@xen.org \
--cc=michal.orzel@amd.com \
--cc=oleksii.kurochko@gmail.com \
--cc=roger.pau@citrix.com \
--cc=sstabellini@kernel.org \
--cc=xen-devel@lists.xenproject.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.