On Thu, 23 Jan 2020 13:47:52 +0000 Alexandru Elisei <alexandru.elisei@xxxxxxx> wrote: > Failling an mmap call or creating a memslot means that device emulation > will not work, don't ignore it. > > Signed-off-by: Alexandru Elisei <alexandru.elisei@xxxxxxx> > --- > hw/vesa.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/hw/vesa.c b/hw/vesa.c > index b92cc990b730..a665736a76d7 100644 > --- a/hw/vesa.c > +++ b/hw/vesa.c > @@ -76,9 +76,11 @@ struct framebuffer *vesa__init(struct kvm *kvm) > > mem = mmap(NULL, VESA_MEM_SIZE, PROT_RW, MAP_ANON_NORESERVE, -1, 0); > if (mem == MAP_FAILED) > - ERR_PTR(-errno); > + return ERR_PTR(-errno); > > - kvm__register_dev_mem(kvm, VESA_MEM_ADDR, VESA_MEM_SIZE, mem); > + r = kvm__register_dev_mem(kvm, VESA_MEM_ADDR, VESA_MEM_SIZE, mem); > + if (r < 0) > + return ERR_PTR(r); For the sake of correctness, we should munmap here, I think. With that fixed: Reviewed-by: Andre Przywara <andre.przywara@xxxxxxx> Cheers, Andre. > > vesafb = (struct framebuffer) { > .width = VESA_WIDTH,