All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@linaro.org>
To: Ian Campbell <ian.campbell@citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	Ian Jackson <ian.jackson@eu.citrix.com>,
	tim@xen.org, stefano.stabellini@citrix.com,
	xen-devel@lists.xenproject.org
Subject: Re: [PATCH v3 22/24] tools/libxl: arm: Use an higher value for the GIC phandle
Date: Mon, 23 Feb 2015 22:02:43 +0000	[thread overview]
Message-ID: <54EBA383.2030406@linaro.org> (raw)
In-Reply-To: <1424702190.27930.120.camel@citrix.com>



On 23/02/2015 14:36, Ian Campbell wrote:
> On Thu, 2015-01-29 at 13:48 +0000, Julien Grall wrote:
>> On 29/01/15 12:28, Stefano Stabellini wrote:
>>> On Thu, 29 Jan 2015, Julien Grall wrote:
>>>> On 29/01/15 11:07, Stefano Stabellini wrote:
>>>>> On Tue, 13 Jan 2015, Julien Grall wrote:
>>>>>> The partial device tree may contains phandle. The Device Tree Compiler
>>>>>> tends to allocate the phandle from 1.
>>>>>>
>>>>>> Reserve the ID 65000 for the GIC phandle. I think we can safely assume
>>>>>> that the partial device tree will never contain a such ID.
>>>>>>
>>>>>> Signed-off-by: Julien Grall <julien.grall@linaro.org>
>>>>>> Cc: Ian Jackson <ian.jackson@eu.citrix.com>
>>>>>> Cc: Wei Liu <wei.liu2@citrix.com>
>>>>>>
>>>>>
>>>>> Shouldn't we at least check that the partial device tree doesn't contain
>>>>> a conflicting phandle?
>>>>
>>>> I don't think so. This will unlikely happen, and if it happens the guest
>>>> will crash with an obvious error.
>>>
>>> It is good that the error is obvious.
>>>
>>> But how expensive is to check for it?
>>
>> I would have to check the validity of the properties (name + value
>> size). At least the properties "linux,phandle" and "phandle" should be
>> checked.
>>
>> Though I could do in copy_properties but I find it hackish.
>
> Can't you just track the largest phandle ever seen during
> copy_properties and then use N+1 for the GIC?

Now the we decided to trust the input device tree, it would be easier to 
write the code.

I will give a look.

>
>>> Think about the poor user that ends up in this situation: the fact that
>>> is unlikely only makes it harder for a user to figure out what to do to
>>> fix it.
>>
>> The poor use will have to write his device tree by hand to hit this
>> error ;).
>
> Or use a new version of dtc which does things differently for some
> reason.

And you would not be able to get a phandle for the GIC if largest 
phandle is too high.

So the guest won't work correctly.

Regards,

-- 
Julien Grall

  reply	other threads:[~2015-02-23 22:02 UTC|newest]

Thread overview: 251+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-13 14:25 [PATCH v3 00/24] xen/arm: Add support for non-pci passthrough Julien Grall
2015-01-13 14:25 ` [PATCH v3 01/24] xen: Extend DOMCTL createdomain to support arch configuration Julien Grall
2015-01-13 15:08   ` Daniel De Graaf
2015-01-19 16:46   ` Jan Beulich
2015-01-20 12:40     ` Julien Grall
2015-01-28 15:50   ` Stefano Stabellini
2015-02-20 15:15   ` Ian Campbell
2015-02-20 16:09     ` Julien Grall
2015-02-20 16:37       ` Jan Beulich
2015-02-23 15:09       ` Ian Campbell
2015-02-20 16:35     ` Jan Beulich
2015-02-23 15:48     ` Andrew Cooper
2015-02-23 16:00       ` Ian Campbell
2015-02-23 21:48         ` Julien Grall
2015-02-24 10:06           ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 02/24] xen/arm: Divide GIC initialization in 2 parts Julien Grall
2015-01-28 16:09   ` Stefano Stabellini
2015-02-20 15:19     ` Ian Campbell
2015-02-20 15:19   ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 03/24] xen/dts: Allow only IRQ translation that are mapped to main GIC Julien Grall
2015-01-28 16:11   ` Stefano Stabellini
2015-02-20 15:20   ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 04/24] xen: guestcopy: Provide an helper to safely copy string from guest Julien Grall
2015-01-13 15:10   ` Daniel De Graaf
2015-01-19 16:51   ` Jan Beulich
2015-01-20 12:45     ` Julien Grall
2015-01-20 13:16       ` Jan Beulich
2015-02-20 15:22   ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 05/24] xen/arm: vgic: Introduce a function to initialize pending_irq Julien Grall
2015-02-20 15:24   ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 06/24] xen/arm: Map disabled device in DOM0 Julien Grall
2015-01-28 16:18   ` Stefano Stabellini
2015-01-28 16:23     ` Julien Grall
2015-01-29 11:41       ` Stefano Stabellini
2015-02-20 15:27   ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 07/24] xen/arm: Introduce xen, passthrough property Julien Grall
2015-01-28 16:36   ` Stefano Stabellini
2015-01-28 16:53     ` Julien Grall
2015-01-29 11:43       ` Stefano Stabellini
2015-02-20 15:38   ` Ian Campbell
2015-02-20 17:01     ` Julien Grall
2015-02-23 15:12       ` Ian Campbell
2015-02-23 15:43         ` Julien Grall
2015-02-20 15:42   ` Ian Campbell
2015-02-20 17:03     ` Julien Grall
2015-02-23 15:15       ` Ian Campbell
2015-02-23 15:44         ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 08/24] xen/arm: Allow virq != irq Julien Grall
2015-01-28 16:47   ` Stefano Stabellini
2015-01-28 16:56     ` Julien Grall
2015-01-28 17:00       ` Julien Grall
2015-01-29 11:50       ` Stefano Stabellini
2015-02-20 15:52   ` Ian Campbell
2015-02-20 17:09     ` Julien Grall
2015-02-27 14:33       ` Julien Grall
2015-02-27 14:44         ` Ian Campbell
2015-02-27 15:55           ` Julien Grall
2015-02-27 14:25     ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 09/24] xen/arm: route_irq_to_guest: Check validity of the IRQ Julien Grall
2015-01-28 17:55   ` Stefano Stabellini
2015-01-28 18:05     ` Julien Grall
2015-01-29 11:52       ` Stefano Stabellini
2015-02-20 16:00   ` Ian Campbell
2015-02-20 17:21     ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 10/24] xen/arm: gic: Add sanity checks gic_route_irq_to_guest Julien Grall
2015-01-28 18:15   ` Stefano Stabellini
2015-02-20 16:07   ` Ian Campbell
2015-02-20 17:28     ` Julien Grall
2015-02-23 15:20       ` Ian Campbell
2015-02-23 15:47         ` Julien Grall
2015-02-23 15:52           ` Ian Campbell
2015-02-23 15:54             ` Julien Grall
2015-02-23 16:04               ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 11/24] xen/arm: Let the toolstack configure the number of SPIs Julien Grall
2015-01-28 18:26   ` Stefano Stabellini
2015-01-28 18:58     ` Julien Grall
2015-01-29 12:01       ` Stefano Stabellini
2015-01-29 12:14         ` Julien Grall
2015-02-20 16:08     ` Ian Campbell
2015-02-20 17:29       ` Julien Grall
2015-02-23 15:22         ` Ian Campbell
2015-02-23 15:48           ` Julien Grall
2015-02-20 16:23   ` Ian Campbell
2015-02-20 17:31     ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 12/24] xen/arm: Release IRQ routed to a domain when it's destroying Julien Grall
2015-01-28 18:38   ` Stefano Stabellini
2015-02-20 16:31   ` Ian Campbell
2015-02-20 17:41     ` Julien Grall
2015-02-23 15:25       ` Ian Campbell
2015-02-23 15:49         ` Julien Grall
2015-03-03 12:50       ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 13/24] xen/arm: Implement hypercall PHYSDEVOP_{, un}map_pirq Julien Grall
2015-01-19 16:54   ` Jan Beulich
2015-01-20 14:01     ` Julien Grall
2015-01-28 18:52   ` Stefano Stabellini
2015-01-28 19:04     ` Julien Grall
2015-01-29 12:17       ` Stefano Stabellini
2015-01-29 12:26         ` Julien Grall
2015-01-29 12:33           ` Stefano Stabellini
2015-02-20 16:53             ` Ian Campbell
2015-02-23  9:33               ` Jan Beulich
2015-02-23 15:28                 ` Ian Campbell
2015-02-23 15:53                   ` Julien Grall
2015-02-23 16:04                     ` Ian Campbell
2015-02-23 16:11                       ` Julien Grall
2015-02-23 16:34                         ` Ian Campbell
2015-02-23 21:54                           ` Julien Grall
2015-02-23 16:22                     ` Jan Beulich
2015-02-23 15:51               ` Julien Grall
2015-02-23 16:02                 ` Ian Campbell
2015-03-04 14:37                   ` Julien Grall
2015-03-04 14:55                     ` Jan Beulich
2015-03-04 14:56                       ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 14/24] xen/dts: Use unsigned int for MMIO and IRQ index Julien Grall
2015-02-20 16:55   ` Ian Campbell
2015-02-23 15:57     ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 15/24] xen/dts: Provide an helper to get a DT node from a path provided by a guest Julien Grall
2015-02-20 16:56   ` Ian Campbell
2015-02-20 17:43     ` Julien Grall
2015-02-23 15:29       ` Ian Campbell
2015-02-23 15:30   ` Ian Campbell
2015-02-23 16:01     ` Julien Grall
2015-02-23 16:27       ` Ian Campbell
2015-03-10 13:58         ` Julien Grall
2015-03-11 12:34           ` Ian Campbell
2015-03-19 14:53             ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 16/24] xen/passthrough: Introduce iommu_construct Julien Grall
2015-01-19 17:02   ` Jan Beulich
2015-01-20 14:28     ` Julien Grall
2015-01-20 16:40       ` Jan Beulich
2015-01-20 17:11         ` Julien Grall
2015-01-21 10:23           ` Jan Beulich
2015-01-21 10:37             ` Julien Grall
2015-01-21 10:48               ` Jan Beulich
2015-01-21 12:13                 ` Julien Grall
2015-01-21 14:13                   ` Jan Beulich
2015-01-21 14:22                     ` Julien Grall
2015-01-21 14:29                       ` Jan Beulich
2015-02-20 16:58   ` Ian Campbell
2015-02-20 17:45     ` Julien Grall
2015-02-23 15:31       ` Ian Campbell
2015-02-23 16:04         ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 17/24] xen/passthrough: arm: release earlier the DT devices assigned to a guest Julien Grall
2015-01-20  9:19   ` Jan Beulich
2015-01-20 14:30     ` Julien Grall
2015-01-20 16:42       ` Jan Beulich
2015-01-28 18:59   ` Stefano Stabellini
2015-02-20 17:03   ` Ian Campbell
2015-02-20 17:46     ` Julien Grall
2015-02-23  9:37       ` Jan Beulich
2015-02-23 15:33         ` Ian Campbell
2015-02-23 16:22           ` Jan Beulich
2015-01-13 14:25 ` [PATCH v3 18/24] xen/passthrough: iommu_deassign_device_dt: By default reassign device to nobody Julien Grall
2015-01-20  9:21   ` Jan Beulich
2015-01-20 14:31     ` Julien Grall
2015-01-29 10:20   ` Stefano Stabellini
2015-02-20 17:04   ` Ian Campbell
2015-02-23  9:40     ` Jan Beulich
2015-02-23 10:10       ` Julien Grall
2015-02-23 10:20         ` Jan Beulich
2015-02-23 15:39           ` Ian Campbell
2015-02-23 16:24             ` Jan Beulich
2015-02-23 16:35               ` Ian Campbell
2015-02-23 16:37             ` Julien Grall
2015-02-23 16:47               ` Jan Beulich
2015-02-23 16:54                 ` Julien Grall
2015-02-23 10:10     ` Julien Grall
2015-02-23 15:34       ` Ian Campbell
2015-03-10 15:29         ` Julien Grall
2015-03-11 12:35           ` Ian Campbell
2015-03-19 15:07             ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 19/24] xen/iommu: arm: Wire iommu DOMCTL for ARM Julien Grall
2015-01-20  9:22   ` Jan Beulich
2015-01-20 14:32     ` Julien Grall
2015-02-20 17:06   ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 20/24] xen/passthrough: Extend XEN_DOMCTL_assign_device to support DT device Julien Grall
2015-01-20  9:34   ` Jan Beulich
2015-01-20 14:37     ` Julien Grall
2015-01-20 16:43       ` Jan Beulich
2015-01-29 10:29     ` Stefano Stabellini
2015-01-29 10:37       ` Jan Beulich
2015-01-29 11:40       ` Julien Grall
2015-01-29 10:29   ` Stefano Stabellini
2015-01-29 11:45     ` Julien Grall
2015-01-29 12:09       ` Stefano Stabellini
2015-01-29 13:09         ` Julien Grall
2015-01-29 15:03           ` Stefano Stabellini
2015-01-29 15:14             ` Julien Grall
2015-02-20 17:17   ` Ian Campbell
2015-02-23 16:25     ` Daniel De Graaf
2015-03-10 16:52       ` Julien Grall
2015-03-10 22:45         ` Daniel De Graaf
2015-03-10 23:07           ` Julien Grall
2015-03-10 23:39             ` Daniel De Graaf
2015-03-11 12:30               ` Julien Grall
2015-03-11  8:53           ` Jan Beulich
2015-03-11 12:15             ` Julien Grall
2015-03-11 12:23               ` Ian Campbell
2015-03-11 12:35                 ` Julien Grall
2015-03-11 12:45               ` Jan Beulich
2015-03-10 16:33     ` Julien Grall
2015-03-11 12:37       ` Ian Campbell
2015-03-11 13:50         ` Julien Grall
2015-03-11 13:55           ` Ian Campbell
2015-03-11 14:03             ` Jan Beulich
2015-03-11 14:11               ` Julien Grall
2015-03-13 16:47           ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 21/24] tools/(lib)xl: Add partial device tree support for ARM Julien Grall
2015-01-29 11:03   ` Stefano Stabellini
2015-01-29 12:02     ` Julien Grall
2015-01-29 12:26       ` Stefano Stabellini
2015-02-23 11:31     ` Ian Campbell
2015-02-23 11:46   ` Ian Campbell
2015-02-23 17:06     ` Julien Grall
2015-02-23 17:22       ` Ian Campbell
2015-03-17 13:32         ` Julien Grall
2015-02-23 12:03   ` Ian Jackson
2015-02-23 12:44     ` Ian Jackson
2015-02-23 18:43     ` Julien Grall
2015-02-23 19:12       ` Ian Jackson
2015-01-13 14:25 ` [PATCH v3 22/24] tools/libxl: arm: Use an higher value for the GIC phandle Julien Grall
2015-01-29 11:07   ` Stefano Stabellini
2015-01-29 12:05     ` Julien Grall
2015-01-29 12:28       ` Stefano Stabellini
2015-01-29 13:48         ` Julien Grall
2015-01-29 15:04           ` Stefano Stabellini
2015-01-29 15:12             ` Julien Grall
2015-02-23 14:36           ` Ian Campbell
2015-02-23 22:02             ` Julien Grall [this message]
2015-02-24 10:08               ` Ian Campbell
2015-03-18 14:14                 ` Julien Grall
2015-01-13 14:25 ` [PATCH v3 23/24] libxl: Add support for non-PCI passthrough Julien Grall
2015-01-29 11:12   ` Stefano Stabellini
2015-01-29 12:08     ` Julien Grall
2015-01-29 12:31       ` Stefano Stabellini
2015-01-29 13:51         ` Julien Grall
2015-02-23 14:41           ` Ian Campbell
2015-02-23 14:42   ` Ian Campbell
2015-01-13 14:25 ` [PATCH v3 24/24] xl: Add new option dtdev Julien Grall
2015-01-29 11:18   ` Stefano Stabellini
2015-01-29 12:09     ` Julien Grall
2015-01-29 12:32       ` Stefano Stabellini
2015-01-29 13:51         ` Julien Grall
2015-01-29 15:06           ` Stefano Stabellini
2015-02-23 14:44             ` Ian Campbell
2015-02-23 14:45   ` Ian Campbell
2015-02-23 22:03     ` Julien Grall
2015-02-24 10:07       ` Ian Campbell
2015-01-13 17:56 ` [PATCH v3 00/24] xen/arm: Add support for non-pci passthrough Julien Grall
2015-02-20 17:18 ` Ian Campbell
2015-02-20 17:47   ` Julien Grall

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=54EBA383.2030406@linaro.org \
    --to=julien.grall@linaro.org \
    --cc=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=stefano.stabellini@citrix.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=tim@xen.org \
    --cc=wei.liu2@citrix.com \
    --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.