All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@lst.de>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 1/3] Add specialized block driver	scsi	generic API
Date: Sun, 15 Mar 2009 16:06:34 +0100	[thread overview]
Message-ID: <20090315150634.GA32019@lst.de> (raw)
In-Reply-To: <49BD1771.9040905@redhat.com>

On Sun, Mar 15, 2009 at 04:57:53PM +0200, Avi Kivity wrote:
> Christoph Hellwig wrote:
> >The patch series (now posted) makes all aio APIs use iovecs.  The
> >current non-iovec based SG API would require some nasty shims allocating
> >nested aiocbs.  Or we could just make the sg aio methods fake-ioveced
> >which is the solution I had before your split, always adding a
> >one-element iovec to the scsi-generic request structure.
> >  
> 
> I'd go for having everything vectored.  It's how non-1962 hardware works.

Yeah, that's what I did for regular block I/O in my series.
scsi-generic is a little different beast, though.  qemu uses the legacy
(not sure if it's formally deprecated) read/write support on /dev/sg
which doen't support vectored I/O.  If we want to use vectored I/O
with sg we'd have to use the SG_IO ioctl (which also has the advantage
of working with all sd/sr/ide/etc block devices).  But supporting that
would probably require very different APIs then the current (aio-)
read/writeish one.

  reply	other threads:[~2009-03-15 15:06 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-12 12:57 [Qemu-devel] [PATCH 0/3] Remove ->bdrv_pread() internal block layer API (v2) Avi Kivity
2009-03-12 12:57 ` [Qemu-devel] [PATCH 1/3] Add specialized block driver scsi generic API Avi Kivity
2009-03-14 14:33   ` Christoph Hellwig
2009-03-15 13:54     ` Avi Kivity
2009-03-15 14:43       ` Christoph Hellwig
2009-03-15 14:57         ` Avi Kivity
2009-03-15 15:06           ` Christoph Hellwig [this message]
2009-03-16 17:29           ` Jamie Lokier
2009-03-12 12:57 ` [Qemu-devel] [PATCH 2/3] Add internal scsi generic block API Avi Kivity
2009-03-12 12:57 ` [Qemu-devel] [PATCH 3/3] Drop internal bdrv_pread()/bdrv_pwrite() APIs Avi Kivity
2009-03-12 19:57 ` [Qemu-devel] Re: [PATCH 0/3] Remove ->bdrv_pread() internal block layer API (v2) Anthony Liguori
  -- strict thread matches above, loose matches on Subject: below --
2009-02-08 17:59 [Qemu-devel] [PATCH 0/3] Remove ->bdrv_pread() internal block layer API Avi Kivity
2009-02-08 17:59 ` [Qemu-devel] [PATCH 1/3] Add specialized block driver scsi generic API Avi Kivity

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=20090315150634.GA32019@lst.de \
    --to=hch@lst.de \
    --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.