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

Re: [Xen-devel] [PATCH v3 00/26] arm64: Dom0 ITS emulation



On 31/03/2017 19:04, Andre Przywara wrote:
Hi,

Hi Andre,

The time I planned for the indirect device table was spent on the above two
items, so I will write this now while the reviewers are on it.

I tried to check every error return and kick out every signed int.
Also the bug that Vijay reported has been fixed (I hope).
While the two command line parameters are still around, the Kconfig
options have been removed.
I tried to separate functions between the existing VGIC and the LPI
and ITS code parts. However there is always some connection which prevents
a clean separation (I tried several approaches).
I checked using the vgic_ops structure, but that feels like abuse for some
functions, also has issues since a GICv3 and a GICv3 with ITS are not
really separate (both could have LPIs), and the latter would always be a
superset of the former, which duplicates code and makes a separate
vgic_ops questionable.

There are reasons why I asked no direct call to {,v}GICv3 specific functions in the common code. As you may know common code is very generic and here to abstract the implementation of a specific GIC controller. It will become quickly unmaintainable if we start to do that.

Do you think the irqchip Linux maintainers will accept direct GICv3 call in the generic code? They will clearly say no and probably not in a very politely way, this is similar here.

Regarding the vgic_ops, I asked to have separate vgic ops for vGICv3 and vGICv3 with ITS because some code path differs. For instance we don't support LPIs without ITS yet. So it makes sense to avoid LPIs code to be called by mistake without ITS. Duplicating a vgic_ops (at max 10 lines) is not much compare to the potential issues.

You also seem to assume that Xen compiled with ITS will only run on GICv3 ITS platform. This is not true at all. The same binary can run on a wide range of platform.

This is not the first time I asked that. So let me be clear, I will not accept any call to specific functions nor #ifdef CONFIG_HAS_ITS in common code. It is a direct NAck from me.

Cheers,

--
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

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