All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [5323] Implement an fd pool to get real AIO with posix-aio
Date: Tue, 07 Oct 2008 16:21:12 -0500	[thread overview]
Message-ID: <48EBD2C8.3040101@codemonkey.ws> (raw)
In-Reply-To: <48EBC932.9010808@redhat.com>

Gerd Hoffmann wrote:
> Anthony Liguori wrote:
>   
>>> Are there plans to support vectored block requests with the thread pool
>>> implementation?
>>>   
>>>       
>> Yes, that's the primary reason for doing a new thread pool
>> implementation.
>>     
>
> Cool.
>
>   
>> Of course, we need a zero-copy DMA API before such a
>> thing would make sense.
>>     
>
> Hmm, quick check of the IDE code indeed shows a copy happening there.
> Why is it needed?  My xen disk backend doesn't copy data.  Does that
> mean might have done something wrong?  Does the virtio backend copy data
> too?
>   

It does now, because the cost of splitting up the AIO request for each 
element of the scatter/gather list was considerably higher than the cost 
of copying the data to a linear buffer.

Look back in qemu-devel for a thread about a DMA API.

You can only avoid doing a copy if you do something like phys_ram_base + 
PA.  From an architectural perspective, this is not ideal since it 
doesn't allow for things like IOMMU emulation.  What we need, is a 
zero-copy API at the PCI level.

Regards,

Anthony Liguori

> Disclaimer: I don't know much about ide dma ...
>
> cheers,
>   Gerd
>
>
>   

  reply	other threads:[~2008-10-07 21:21 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-26 15:59 [Qemu-devel] [5323] Implement an fd pool to get real AIO with posix-aio Anthony Liguori
2008-09-26 17:59 ` Ryan Harper
2008-09-26 18:35   ` Anthony Liguori
2008-09-26 18:50     ` Ryan Harper
2008-10-07 15:43 ` Gerd Hoffmann
2008-10-07 16:01   ` Anthony Liguori
2008-10-07 20:40     ` Gerd Hoffmann
2008-10-07 21:21       ` Anthony Liguori [this message]
2008-10-07 22:15         ` Gerd Hoffmann
2008-10-07 22:39           ` Anthony Liguori

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48EBD2C8.3040101@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.