7 messages in com.xensource.lists.xen-develRe: [Xen-devel][PATCH][VT] Multithrea...
FromSent OnAttachments
Yang, Xiaowei26 Oct 2005 02:23.patch
Dong, Eddie26 Oct 2005 07:31 
Anthony Liguori26 Oct 2005 08:13 
Dong, Eddie26 Oct 2005 08:25 
Anthony Liguori26 Oct 2005 15:05 
Dong, Eddie27 Oct 2005 07:18.patch
Keir Fraser27 Oct 2005 09:39 
Subject:Re: [Xen-devel][PATCH][VT] Multithread IDE device model ( was: RE: [Xen-devel] [PATCH]Make IDE dma tranfer run in another thread inqemu)
From:Anthony Liguori (alig@us.ibm.com)
Date:10/26/2005 03:05:09 PM
List:com.xensource.lists.xen-devel

Dong, Eddie wrote:

Hi Anthony: I think you made misunderstanding to this patch. Current Qemu in Xen is already DMA enabled. If I remembered correctly, it happens since we change DM from Bochs to Qemu. Without this patch, guest IO operation that trigger DMA (like port 0xc000 write) will wait in Qemu till the DMA operation is completed, that is original single thread IDE device model mean. With this patch, a seperate thread will service the dma operation started by IO operation, and interrupt target processor when it is completed, while the main thread can rapidly return to guest (like 0xc000 write).

Yup, the site I linked to has two patches: a DMA patch and a concurrent IO patch.

Here's a direct link: http://people.brandeis.edu/~jcoiner/qemu_idedma/qemu_concurrent_io.patch

It's using the same basic approach as your patch (another thread waits for completion of IO event). I'm pointing it out though in case there's a desire to stay closer to QEMU upstream when possible. Might enable more code sharing in the future.

Regards,

Thanks,eddie

Hi Eddie,

There was a patch floating around on qemu-devel recently to make IDE DMA concurrent. Fabrice is planning to include it in QEMU as long as there are no regressions. It may already be in CVS.

See http://people.brandeis.edu/~jcoiner/qemu_idedma/qemu_dma_patch.html

The reported performance improvement IO is up to 20% so it's definitely worth applying...

Regards,