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

Re: [PATCH v1 12/16] xen/domain: introduce domain-emu.h



On Mon, Aug 04, 2025 at 09:13:07AM +0200, Jan Beulich wrote:
> On 01.08.2025 21:30, dmkhn@xxxxxxxxx wrote:
> > On Fri, Aug 01, 2025 at 08:02:56AM +0200, Jan Beulich wrote:
> >> On 31.07.2025 22:55, dmkhn@xxxxxxxxx wrote:
> >>> On Wed, Jul 09, 2025 at 04:57:44PM +0200, Jan Beulich wrote:
> >>>> On 24.06.2025 05:56, dmkhn@xxxxxxxxx wrote:
> >>>>> @@ -458,16 +459,16 @@ struct arch_domain
> >>>>>  } __cacheline_aligned;
> >>>>>
> >>>>>  #ifdef CONFIG_HVM
> >>>>> -#define X86_EMU_LAPIC    XEN_X86_EMU_LAPIC
> >>>>> -#define X86_EMU_HPET     XEN_X86_EMU_HPET
> >>>>> -#define X86_EMU_PM       XEN_X86_EMU_PM
> >>>>> -#define X86_EMU_RTC      XEN_X86_EMU_RTC
> >>>>> -#define X86_EMU_IOAPIC   XEN_X86_EMU_IOAPIC
> >>>>> -#define X86_EMU_PIC      XEN_X86_EMU_PIC
> >>>>> -#define X86_EMU_VGA      XEN_X86_EMU_VGA
> >>>>> -#define X86_EMU_IOMMU    XEN_X86_EMU_IOMMU
> >>>>> -#define X86_EMU_USE_PIRQ XEN_X86_EMU_USE_PIRQ
> >>>>> -#define X86_EMU_VPCI     XEN_X86_EMU_VPCI
> >>>>
> >>>> The old code deliberately used values from the public interface.
> >>>
> >>> In next version I am building, I moved all of XEN_X86_EMU_XXX definitions 
> >>> as
> >>> is to a new public header under include/public/xen-emu.h:
> >>>
> >>>   
> >>> https://gitlab.com/xen-project/people/dmukhin/xen/-/commit/9b0bc5ffa5710114df8523ae2aa7680b7c6f0942
> >>>
> >>> That looks less invasive.
> >>>
> >>> Will that work?
> >>>
> >>> There should be a common header with emulation flags somewhere, since
> >>> there will be SBSA and hwdom vUART definitions there.
> >>
> >> Yet will there be a strict need for any constants to be identical (i.e.
> >> not only have the same name, but also the same value) across architectures?
> >
> > I don't think there's strict need for identical values across achitectures.
> 
> That's what I was expecting.
> 
> > But some of the constants _may_ be reused for non-x86 arches, like VPCI bit
> > and, perhaps, IOMMU, PIRQ and future NS16550 (after adding MMIO).
> 
> Right, but as you say - they want to use the same name, but they could easily
> have a different value there. I hope you understand that what I'm questioning
> is the introduction of a single header covering all architectures.

Yes, I understand your point wrt common header and identical values in
emulation flags.

I think I can add missing per-vUART fields to per-arch xen_arch_domainconfig,
populate them by the toolstack and be done for now, i.e. I can drop that
patch.

--
Denis




 


Rackspace

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