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

Re: [Xen-devel] [PATCH v4 12/17] xen/arm: ITS: Initialize LPI irq descriptors and route



Hi Vijay,

On 15/07/2015 20:13, Julien Grall wrote:
+uint8_t vgic_its_get_priority(struct vcpu *v, uint32_t pid)
+{
+    uint8_t priority;
+
+    priority =  readb_relaxed(v->domain->arch.vits->prop_page + pid);

Why do you use readb_relaxed here? This should only be used for Device
MMIO.

Although, you need to ensure that the value will be correctly
synchronize if another CPU is writing in prop_page which is protected by
prop_lock.

I though a bit more during the night about this function. On patch #11, where you allocate prop_page, you allow to have a smaller table than the number of LPIs. If the pid is too high, even though valid, you may read Xen memory or even crash Xen.

Although, what does mean pid? Should not it be vlpi?

Regards,

--
Julien Grall

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


 


Rackspace

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