[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] fix stubdomain after DisplayState changes
Hi all, this patch fixes few stubdom issues arised after the recent DisplayState changes (not yet pushed to qemu-xen-unstable). The main problem is that we need to touch the newly allocated pages before sharing them, because minios allocates on first write. Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> --- diff -r 4dc64c2e2dea hw/xenfb.c --- a/hw/xenfb.c Fri Mar 13 12:20:50 2009 +0000 +++ b/hw/xenfb.c Fri Mar 13 18:15:35 2009 +0000 @@ -741,7 +741,6 @@ xenfb->c.ds->surface = qemu_create_displaysurface_from (xenfb->width, xenfb->height, xenfb->depth, xenfb->row_stride, xenfb->pixels + xenfb->offset); - dpy_resize(xenfb->c.ds); break; default: /* we must convert stuff */ @@ -750,6 +749,7 @@ xenfb->depth, xenfb->row_stride); break; } + dpy_resize(xenfb->c.ds); xen_be_printf(&xenfb->c.xendev, 1, "update: resizing: %dx%d\n", xenfb->width, xenfb->height); xenfb->up_fullscreen = 1; diff -r 4dc64c2e2dea xenfbfront.c --- a/xenfbfront.c Fri Mar 13 12:20:50 2009 +0000 +++ b/xenfbfront.c Fri Mar 13 18:15:35 2009 +0000 @@ -279,9 +279,11 @@ fprintf(stderr, "xenfb_pv_display_allocator: could not allocate nonshared_vram\n"); exit(1); } + /* Touch the pages before sharing them */ + memset(xs->nonshared_vram, 0xff, vga_ram_size); ds = xenfb_create_displaysurface(ds_get_width(xs->ds), ds_get_height(xs->ds), ds_get_bits_per_pixel(xs->ds), ds_get_linesize(xs->ds)); - qemu_free_displaysurface(xs->ds); + defaultallocator_free_displaysurface(xs->ds->surface); xs->ds->surface = ds; } _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |