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

Re: [Xen-devel] Requesting for freeze exception for ARM/ITS patches

Hi Ian,

On Sat, Jul 11, 2015 at 12:06 PM, Julien Grall <julien.grall@xxxxxxxxxx> wrote:
> Hi,
> On 10/07/2015 17:52, Ian Campbell wrote:
>> On Fri, 2015-07-10 at 12:01 +0100, Jan Beulich wrote:
>>>>>> On 10.07.15 at 12:46, <vijay.kilari@xxxxxxxxx> wrote:
>>>>      I would like to have freeze exception for ITS feature on ARM64.
>>>> Design got freeze few weeks back and I have sent v4 version of patch
>>>> series
>>>> today.
>>>> This patches will not impact any generic code of other platforms and
>>>> have
>>>> minor
>>>> changes generic arm related code. Also these patches are only for
>>>> ARM64 platform.
>>>> These patches are pre-requisite for PCI support / Pass-through support
>>>> on ARM64 platforms.
>>> But what good will it do for the release when it's only a prereq for
>>> further work?
>> I think this may have been true of v3 but I think it is underselling v4.
>> AFAICT with the final patch in v4 Xen will actually be capable of
>> booting on a ThunderX platform and starting guests. It will simply lack
>> PCI passthrough capabilities (as do all ARM platforms today).
> I think you are overselling this patch series. PCI devices provide the
> support of both legacy interrupt and MSI.
> The former is handled by your PCI patch series [1] pushed upstreamed few
> days ago. This should be enough for booting ThunderX and creating guests.
> The ITS add the support of MSI which is useful for performance question and
> PCI passthrough.
>> I think that's a reasonable thing to try and get into 4.6.
> If we ever decide to get this into 4.6 we need some guarantee from Cavium to
> finish the work afterwards.
> Regards,
> [1] http://lists.xen.org/archives/html/xen-devel/2015-07/msg00656.html

I am trying to boot latest staging Xen branch on ThunderX with ITS patches.

I face below issues with above [1] patch series

1)  If pcie support only MSI, then INT mapping is not specified in DT. However
  the below code returns error if INT mapping is not found and does not map.
In ThunderX INT mapping is not specified for pcie nodes.

static int map_device_children(struct domain *d,
                                const struct dt_device_node *dev)
     int ret;

     if ( dt_device_type_is_equal(dev, "pci") )
         DPRINT("Mapping children of %s to guest\n", dt_node_full_name(dev));

         ret = dt_for_each_irq_map(dev, &map_dt_irq_to_domain, d);
         if ( ret < 0 )
             return ret;  // Returns error here

2) Dom0 fails to boot with GICv3. It hangs just after GICv3 initialization.

To know which is last distributor/re-distributor registers read, I
have added debug prints
in GICD & GICR mmio handlers in Xen. But with your patches Linux driver never
traps to Xen to read/write GICD/GICR registers. If I revert back this
patch series,
I see the traps.


Xen-devel mailing list



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