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

Re: [PATCH] xen/arm: Remove EXPERT dependancy



Hi Stefano,

On 22/10/2020 22:17, Stefano Stabellini wrote:
On Thu, 22 Oct 2020, Julien Grall wrote:
On 22/10/2020 02:43, Elliott Mitchell wrote:
Linux requires UEFI support to be enabled on ARM64 devices.  While many
ARM64 devices lack ACPI, the writing seems to be on the wall of UEFI/ACPI
potentially taking over.  Some common devices may need ACPI table
support.

Presently I think it is worth removing the dependancy on CONFIG_EXPERT.

The idea behind EXPERT is to gate any feature that is not considered to be
stable/complete enough to be used in production.

Yes, and from that point of view I don't think we want to remove EXPERT
from ACPI yet. However, the idea of hiding things behind EXPERT works
very well for new esoteric features, something like memory introspection
or memory overcommit.

Memaccess is not very new ;).

It does not work well for things that are actually
required to boot on the platform.

I am not sure where is the problem. It is easy to select EXPERT from the menuconfig. It also hints the user that the feature may not fully work.


Typically ACPI systems don't come with device tree at all (RPi4 being an
exception), so users don't really have much of a choice in the matter.

And they typically have IOMMUs.


 From that point of view, it would be better to remove EXPERT from ACPI,
maybe even build ACPI by default, *but* to add a warning at boot saying
something like:

"ACPI support is experimental. Boot using Device Tree if you can."


That would better convey the risks of using ACPI, while at the same time
making it a bit easier for users to boot on their ACPI-only platforms.

Right, I agree that this make easier for users to boot Xen on ACPI-only platform. However, based on above, it is easy enough for a developper to rebuild Xen with ACPI and EXPERT enabled.

So what sort of users are you targeting?

I am sort of okay to remove EXPERT. But I still think building ACPI by default is still wrong because our default .config is meant to be (security) supported. I don't think ACPI can earn this qualification today.

In order to remove EXPERT, there are a few things to needs to be done (or checked):
    1) SUPPORT.MD has a statement about ACPI on Arm
    2) DT is favored over ACPI if the two firmware tables are present.



I don't consider the ACPI complete because the parsing of the IORT (used to
discover SMMU and GICv3 ITS) is not there yet.

I vaguely remember some issues on system using SMMU (e.g. Thunder-X) because
Dom0 will try to use the IOMMU and this would break PV drivers.

I am not sure why Dom0 using the IOMMU would break PV drivers? Is it
because the pagetable is not properly updated when mapping foreign
pages?

IIRC, yes. This would need to be tested again.

Cheers,

--
Julien Grall



 


Rackspace

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