As vpl011 UART is not initialized for dom 0, when the domain tries to access to
this range, a segfault will occur in Xen. The right behaviour should be a data
abort for the guest.
Signed-off-by: Julien Grall <julien.grall@linaro.org>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
static int uart0_mmio_check(struct vcpu *v, paddr_t addr)
{
- return addr >= UART0_START && addr < UART0_END;
+ struct domain *d = v->domain;
+
+ return d->domain_id != 0 && addr >= UART0_START && addr < UART0_END;
}
static int uart0_mmio_read(struct vcpu *v, mmio_info_t *info)