From: Kevin Wolf <kwolf@redhat.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: pbonzini@redhat.com, aliguori@us.ibm.com, hch@lst.de,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 4/7] raw_bsd: introduce "special members"
Date: Tue, 20 Aug 2013 10:11:45 +0200 [thread overview]
Message-ID: <20130820081145.GB2384@dhcp-200-207.str.redhat.com> (raw)
In-Reply-To: <1376662507-5212-5-git-send-email-lersek@redhat.com>
Am 16.08.2013 um 16:15 hat Laszlo Ersek geschrieben:
> On 08/05/13 15:03, Paolo Bonzini wrote:
> >
> > [...]
> >
> > 3) These members are special
> >
> > .format_name is the string "raw"
> > .bdrv_open raw_open should set bs->sg to bs->file->sg and return 0
> > .bdrv_close raw_close should do nothing
> > .bdrv_probe raw_probe should just return 1.
>
> Signed-off-by: Laszlo Ersek <lersek@redhat.com>
> ---
> block/raw_bsd.c | 20 ++++++++++++++++++++
> 1 files changed, 20 insertions(+), 0 deletions(-)
>
> diff --git a/block/raw_bsd.c b/block/raw_bsd.c
> index 5bcbe71..86e018d 100644
> --- a/block/raw_bsd.c
> +++ b/block/raw_bsd.c
> @@ -112,3 +112,23 @@ static TYPE raw_create(void)
> {
> return bdrv_create_file();
> }
> +
> +static const char *raw_format_name(void)
> +{
> + return "raw";
> +}
> +
> +static int raw_open(BlockDriverState *bs)
> +{
> + bs->sg = bs->file->sg;
I know that Paolo explicitly made this requirement, but I think it is
ugly. We should instead fix bdrv_is_sg() to look at bs->file if it
exists, like many other functions already do, and change the two readers
of bs->sg in block.c to use bdrv_is_sg().
> + return 0;
> +}
> +
> +static void raw_close(void)
> +{
> +}
> +
> +static int raw_probe(void)
> +{
> + return 1;
> +}
Maybe add a comment here like "smallest possible positive score so that
raw is used if and only if no other block driver works".
Kevin
next prev parent reply other threads:[~2013-08-20 8:11 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-16 14:15 [Qemu-devel] [PATCH 0/7] introduce BSD-licensed block driver for "raw" Laszlo Ersek
2013-08-16 14:15 ` [Qemu-devel] [PATCH 1/7] add skeleton for BSD licensed "raw" BlockDriver Laszlo Ersek
2013-08-16 14:15 ` [Qemu-devel] [PATCH 2/7] raw_bsd: emit debug events in bdrv_co_readv() and bdrv_co_writev() Laszlo Ersek
2013-08-16 14:15 ` [Qemu-devel] [PATCH 3/7] raw_bsd: add raw_create() Laszlo Ersek
2013-08-16 14:15 ` [Qemu-devel] [PATCH 4/7] raw_bsd: introduce "special members" Laszlo Ersek
2013-08-20 8:11 ` Kevin Wolf [this message]
2013-08-16 14:15 ` [Qemu-devel] [PATCH 5/7] raw_bsd: add raw_create_options Laszlo Ersek
2013-08-16 14:15 ` [Qemu-devel] [PATCH 6/7] raw_bsd: register bdrv_raw Laszlo Ersek
2013-08-16 14:15 ` [Qemu-devel] [PATCH 7/7] switch raw block driver from "raw.o" to "raw_bsd.o" Laszlo Ersek
2013-08-18 14:29 ` Paolo Bonzini
2013-08-20 7:51 ` Kevin Wolf
2013-08-16 14:59 ` [Qemu-devel] [PATCH 0/7] introduce BSD-licensed block driver for "raw" Anthony Liguori
2013-08-16 15:06 ` Daniel P. Berrange
2013-08-18 14:25 ` Paolo Bonzini
2013-08-19 16:24 ` Laszlo Ersek
2013-08-20 8:21 ` Kevin Wolf
2013-08-21 8:20 ` Laszlo Ersek
2013-08-21 9:03 ` Paolo Bonzini
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=20130820081145.GB2384@dhcp-200-207.str.redhat.com \
--to=kwolf@redhat.com \
--cc=aliguori@us.ibm.com \
--cc=hch@lst.de \
--cc=lersek@redhat.com \
--cc=pbonzini@redhat.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).