All of lore.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi@redhat.com>
To: Christoph Hellwig <hch@lst.de>
Cc: qemu-devel@nongnu.org, Christoph Hellwig <hch@infradead.org>,
	kvm@vger.kernel.org
Subject: Re: [Qemu-devel] [PATCH][RFC] Linux AIO support when using O_DIRECT
Date: Mon, 23 Mar 2009 21:35:37 +0200	[thread overview]
Message-ID: <49C7E489.4070604@redhat.com> (raw)
In-Reply-To: <20090323184827.GA14826@lst.de>

Christoph Hellwig wrote:
> On Mon, Mar 23, 2009 at 01:10:30PM -0500, Anthony Liguori wrote:
>   
>> I really dislike having so many APIs.  I'd rather have an aio API that 
>> took byte accesses or have pread/pwrite always be emulated with a full 
>> sector read/write
>>     
>
> I had patches to change the aio API to byte based access, and get rid
> of the read/write methods to only have the byte based pread/pwrite
> APIs, but thay got obsoleted by Avi's patch to kill the pread/pwrite
> ops.  We could put in byte-based AIO without byte-based read/write,
> though.  In my patches I put a flag into BlockDriverState whether we
> allow byte-based access to this instance or otherwise emulated it in
> the block layer.  

I like this approach.  An additional flag could tell us what buffer 
alignment the format driver wants, so we can eliminate the alignment 
bounce from format driver code.  Oh, and a flag to indicate we don't 
support vectors, so the generic layer will bounce and send us a length 
one iovec.

Note the align flag is in the device state, not the format driver, as it 
depends on the cache= settings.

-- 
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.


WARNING: multiple messages have this Message-ID (diff)
From: Avi Kivity <avi@redhat.com>
To: Christoph Hellwig <hch@lst.de>
Cc: Christoph Hellwig <hch@infradead.org>,
	qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: Re: [Qemu-devel] [PATCH][RFC] Linux AIO support when using O_DIRECT
Date: Mon, 23 Mar 2009 21:35:37 +0200	[thread overview]
Message-ID: <49C7E489.4070604@redhat.com> (raw)
In-Reply-To: <20090323184827.GA14826@lst.de>

Christoph Hellwig wrote:
> On Mon, Mar 23, 2009 at 01:10:30PM -0500, Anthony Liguori wrote:
>   
>> I really dislike having so many APIs.  I'd rather have an aio API that 
>> took byte accesses or have pread/pwrite always be emulated with a full 
>> sector read/write
>>     
>
> I had patches to change the aio API to byte based access, and get rid
> of the read/write methods to only have the byte based pread/pwrite
> APIs, but thay got obsoleted by Avi's patch to kill the pread/pwrite
> ops.  We could put in byte-based AIO without byte-based read/write,
> though.  In my patches I put a flag into BlockDriverState whether we
> allow byte-based access to this instance or otherwise emulated it in
> the block layer.  

I like this approach.  An additional flag could tell us what buffer 
alignment the format driver wants, so we can eliminate the alignment 
bounce from format driver code.  Oh, and a flag to indicate we don't 
support vectors, so the generic layer will bounce and send us a length 
one iovec.

Note the align flag is in the device state, not the format driver, as it 
depends on the cache= settings.

-- 
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.

  reply	other threads:[~2009-03-23 19:35 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-23 15:45 [PATCH][RFC] Linux AIO support when using O_DIRECT Anthony Liguori
2009-03-23 15:45 ` [Qemu-devel] " Anthony Liguori
2009-03-23 16:17 ` Avi Kivity
2009-03-23 17:14   ` Anthony Liguori
2009-03-23 17:29     ` Christoph Hellwig
2009-03-23 17:29       ` Christoph Hellwig
2009-03-23 18:10       ` Anthony Liguori
2009-03-23 18:10         ` Anthony Liguori
2009-03-23 18:48         ` Christoph Hellwig
2009-03-23 19:35           ` Avi Kivity [this message]
2009-03-23 19:35             ` Avi Kivity
2009-03-23 17:32     ` Christoph Hellwig
2009-03-23 17:32       ` Christoph Hellwig
2009-03-23 19:58     ` Avi Kivity
2009-03-23 20:32       ` Anthony Liguori
2009-03-23 17:26   ` Christoph Hellwig

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=49C7E489.4070604@redhat.com \
    --to=avi@redhat.com \
    --cc=hch@infradead.org \
    --cc=hch@lst.de \
    --cc=kvm@vger.kernel.org \
    --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.