[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: fs-backend on -unstable
Jody Belka wrote: > Now, the stub domain isn't actually working for me anyway, even on > non-pvops0, but it is able to talk to the fs-backend at least. To show > what that looks like, I've attached a couple of emails I sent off-list. There are some known issues that affect stubdoms at the moment, since they involve some changes made on qemu upstream I am trying to find a solution there. However if you want to test the latest stubdoms you can try this patch, it works for me. --- diff --git a/hw/ide.c b/hw/ide.c index 7031ba1..a97c78b 100644 --- a/hw/ide.c +++ b/hw/ide.c @@ -1056,10 +1056,11 @@ static int dma_buf_prepare(BMDMAState *bm, int is_write) uint32_t addr; uint32_t size; } prd; - int l, len; + int l, len, n; void *mem; target_phys_addr_t l1; + n = s->nsector <= IDE_DMA_BUF_SECTORS ? s->nsector : IDE_DMA_BUF_SECTORS; qemu_iovec_init(&s->iovec, s->nsector / (TARGET_PAGE_SIZE/512) + 1); s->io_buffer_size = 0; for(;;) { @@ -1082,6 +1083,13 @@ static int dma_buf_prepare(BMDMAState *bm, int is_write) l = bm->cur_prd_len; if (l > 0) { l1 = l; + if (l1 > IDE_DMA_BUF_SECTORS * 512) + l1 = IDE_DMA_BUF_SECTORS * 512; + if (s->io_buffer_size + l1 > IDE_DMA_BUF_SECTORS * 512) { + l1 = IDE_DMA_BUF_SECTORS * 512 - s->io_buffer_size; + if (!l1) + return s->io_buffer_size != 0; + } mem = cpu_physical_memory_map(bm->cur_prd_addr, &l1, is_write); if (!mem) { break; @@ -1263,6 +1271,8 @@ static void ide_read_dma_cb(void *opaque, int ret) /* launch next transfer */ n = s->nsector; + if (n > IDE_DMA_BUF_SECTORS) + n = IDE_DMA_BUF_SECTORS; s->io_buffer_index = 0; s->io_buffer_size = n * 512; if (dma_buf_prepare(bm, 1) == 0) @@ -1412,6 +1422,8 @@ static void ide_write_dma_cb(void *opaque, int ret) } n = s->nsector; + if (n > IDE_DMA_BUF_SECTORS) + n = IDE_DMA_BUF_SECTORS; s->io_buffer_size = n * 512; /* launch next transfer */ if (dma_buf_prepare(bm, 0) == 0) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |