From: Jeff Cody <jcody@redhat.com>
To: John Snow <jsnow@redhat.com>
Cc: qemu-devel@nongnu.org, kwolf@redhat.com, stefanha@redhat.com,
qemu-block@nongnu.org
Subject: Re: [Qemu-devel] [PATCH for-2.10 5/9] block: introduce bdrv_try_set_read_only()
Date: Wed, 5 Apr 2017 20:23:12 -0400 [thread overview]
Message-ID: <20170406002312.GL1135@localhost.localdomain> (raw)
In-Reply-To: <4c0fc97d-ca5a-4952-570b-f7598f2aec9d@redhat.com>
On Wed, Apr 05, 2017 at 04:28:44PM -0400, John Snow wrote:
>
>
> On 04/05/2017 02:28 PM, Jeff Cody wrote:
> > Introduce try function for setting read_only flags. Will return < 0 on
> > error, with appropriate Error value set. Does not alter any flags.
> >
> > Signed-off-by: Jeff Cody <jcody@redhat.com>
> > ---
> > block.c | 14 +++++++++++++-
> > include/block/block.h | 1 +
> > 2 files changed, 14 insertions(+), 1 deletion(-)
> >
> > diff --git a/block.c b/block.c
> > index 8bfe7f4..ad958b9 100644
> > --- a/block.c
> > +++ b/block.c
> > @@ -197,7 +197,7 @@ bool bdrv_is_read_only(BlockDriverState *bs)
> > return bs->read_only;
> > }
> >
> > -int bdrv_set_read_only(BlockDriverState *bs, bool read_only, Error **errp)
> > +int bdrv_try_set_read_only(BlockDriverState *bs, bool read_only, Error **errp)
> > {
> > /* Do not set read_only if copy_on_read is enabled */
> > if (bs->copy_on_read && read_only) {
> > @@ -213,6 +213,18 @@ int bdrv_set_read_only(BlockDriverState *bs, bool read_only, Error **errp)
> > return -EPERM;
> > }
> >
> > + return 0;
> > +}
> > +
> > +int bdrv_set_read_only(BlockDriverState *bs, bool read_only, Error **errp)
> > +{
> > + int ret = 0;
> > +
> > + ret = bdrv_try_set_read_only(bs, read_only, errp);
> > + if (ret < 0) {
> > + return ret;
> > + }
> > +
> > bs->read_only = read_only;
> > return 0;
> > }
> > diff --git a/include/block/block.h b/include/block/block.h
> > index beb563a..0049b57 100644
> > --- a/include/block/block.h
> > +++ b/include/block/block.h
> > @@ -426,6 +426,7 @@ int bdrv_is_allocated_above(BlockDriverState *top, BlockDriverState *base,
> > int64_t sector_num, int nb_sectors, int *pnum);
> >
> > bool bdrv_is_read_only(BlockDriverState *bs);
> > +int bdrv_try_set_read_only(BlockDriverState *bs, bool read_only, Error **errp);
> > int bdrv_set_read_only(BlockDriverState *bs, bool read_only, Error **errp);
> > bool bdrv_is_sg(BlockDriverState *bs);
> > bool bdrv_is_inserted(BlockDriverState *bs);
> >
>
> Maybe I'm just green, but I find it weird that the function is named
> try_x when we aren't actually trying to do anything, we're checking to
> see if we can.
Yeah, not a good name. Maybe bdrv_set_read_only_test() or
bdrv_test_set_read_only()?
next prev parent reply other threads:[~2017-04-06 0:23 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-05 18:28 [Qemu-devel] [PATCH for-2.10 0/9] RBD reopen, read_only cleanup Jeff Cody
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 1/9] block: add bdrv_set_read_only() helper function Jeff Cody
2017-04-07 9:06 ` Stefan Hajnoczi
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 2/9] block: do not set BDS read_only if copy_on_read enabled Jeff Cody
2017-04-05 19:16 ` John Snow
2017-04-05 23:50 ` Jeff Cody
2017-04-07 9:13 ` Stefan Hajnoczi
2017-04-07 9:45 ` Stefan Hajnoczi
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 3/9] block: honor BDRV_O_ALLOW_RDWR when clearing bs->read_only Jeff Cody
2017-04-05 19:20 ` John Snow
2017-04-05 19:26 ` Eric Blake
2017-04-06 0:20 ` Jeff Cody
2017-04-06 0:55 ` Jeff Cody
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 4/9] block: code movement Jeff Cody
2017-04-05 20:25 ` John Snow
2017-04-07 9:16 ` Stefan Hajnoczi
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 5/9] block: introduce bdrv_try_set_read_only() Jeff Cody
2017-04-05 20:28 ` John Snow
2017-04-06 0:23 ` Jeff Cody [this message]
2017-04-07 9:18 ` Stefan Hajnoczi
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 6/9] block: use bdrv_try_set_read_only() during reopen Jeff Cody
2017-04-05 20:25 ` John Snow
2017-04-06 0:27 ` Jeff Cody
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 7/9] block/rbd - update variable names to more apt names Jeff Cody
2017-04-07 9:47 ` Stefan Hajnoczi
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 8/9] block/rbd: do not blindly set bs->read_only Jeff Cody
2017-04-07 9:52 ` Stefan Hajnoczi
2017-04-05 18:28 ` [Qemu-devel] [PATCH for-2.10 9/9] block/rbd: Add support for reopen() Jeff Cody
2017-04-07 9:53 ` Stefan Hajnoczi
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=20170406002312.GL1135@localhost.localdomain \
--to=jcody@redhat.com \
--cc=jsnow@redhat.com \
--cc=kwolf@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/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.