From: Max Reitz <mreitz@redhat.com>
To: Eric Blake <eblake@redhat.com>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>, Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v3 2/5] block: JSON filenames and relative backing files
Date: Wed, 26 Nov 2014 10:10:20 +0100 [thread overview]
Message-ID: <547598FC.6090001@redhat.com> (raw)
In-Reply-To: <5474DF13.4020202@redhat.com>
On 2014-11-25 at 20:57, Eric Blake wrote:
> On 11/24/2014 02:43 AM, Max Reitz wrote:
>> When using a relative backing file name, qemu needs to know the
>> directory of the top image file. For JSON filenames, such a directory
>> cannot be easily determined (e.g. how do you determine the directory of
>> a qcow2 BDS directly on top of a quorum BDS?). Therefore, do not allow
>> relative filenames for the backing file of BDSs only having a JSON
>> filename.
>>
>> Furthermore, BDS::exact_filename should be used whenever possible. If
>> BDS::filename is not equal to BDS::exact_filename, the former will
>> always be a JSON object.
>>
>> Signed-off-by: Max Reitz <mreitz@redhat.com>
>> ---
>> block.c | 27 +++++++++++++++++++++------
>> block/qapi.c | 7 ++++++-
>> include/block/block.h | 5 +++--
>> 3 files changed, 30 insertions(+), 9 deletions(-)
>>
>> diff --git a/block.c b/block.c
>> index 0c1be37..a0cddcd 100644
>> --- a/block.c
>> +++ b/block.c
>> @@ -305,19 +305,28 @@ void path_combine(char *dest, int dest_size,
>>
>> void bdrv_get_full_backing_filename_from_filename(const char *backed,
>> const char *backing,
>> - char *dest, size_t sz)
>> + char *dest, size_t sz,
>> + Error **errp)
>> {
>> - if (backing[0] == '\0' || path_has_protocol(backing)) {
>> + if (backing[0] == '\0' || path_has_protocol(backing) ||
>> + path_is_absolute(backing))
>> + {
> checkpatch.pl didn't complain about this? The { should be on the
> previous line. With that fixed,
> Reviewed-by: Eric Blake <eblake@redhat.com>
Oh, actually it does.
But there's no rule about that in CODING_STYLE. There is a rule about {
being on the same line as the if, though ("The opening brace is on the
line that contains the control
flow statement that introduces the new block"). With the condition split
over multiple lines, that is no longer possible; therefore, we can place
{ anywhere we want.
I always place { on the following line for multi-line conditions because
I find that more readable[1]; maybe I'll change my mind in a year or
two, but for now there is no rule about this case and I always do it
this way; so far, nobody complained. :-)
[1] I don't like the following:
if (foo0() || foo1() || foo2() || foo3() ||
bar0() || bar1() || bar2() || bar3()) {
baz();
Because in my eyes it looks like baz() may be part of the condition list
at first glance (because it is indented just as much as the last line of
the condition list).
Max
next prev parent reply other threads:[~2014-11-26 9:10 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-24 9:43 [Qemu-devel] [PATCH v3 0/5] block: Relative backing files Max Reitz
2014-11-24 9:43 ` [Qemu-devel] [PATCH v3 1/5] block: Get full backing filename from string Max Reitz
2014-11-25 19:53 ` Eric Blake
2014-11-26 5:38 ` Fam Zheng
2014-11-24 9:43 ` [Qemu-devel] [PATCH v3 2/5] block: JSON filenames and relative backing files Max Reitz
2014-11-25 19:57 ` Eric Blake
2014-11-26 9:10 ` Max Reitz [this message]
2014-11-26 5:35 ` Fam Zheng
2014-11-26 9:12 ` Max Reitz
2014-11-24 9:43 ` [Qemu-devel] [PATCH v3 3/5] block: Relative backing file for image creation Max Reitz
2014-11-25 20:11 ` Eric Blake
2014-11-26 5:40 ` Fam Zheng
2014-11-24 9:43 ` [Qemu-devel] [PATCH v3 4/5] block/vmdk: Relative backing file for creation Max Reitz
2014-11-25 21:52 ` Eric Blake
2014-11-26 5:38 ` Fam Zheng
2014-11-24 9:43 ` [Qemu-devel] [PATCH v3 5/5] iotests: Add test for relative backing file names Max Reitz
2014-11-25 22:06 ` Eric Blake
2014-11-26 9:24 ` Max Reitz
2014-11-26 5:45 ` Fam Zheng
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=547598FC.6090001@redhat.com \
--to=mreitz@redhat.com \
--cc=eblake@redhat.com \
--cc=kwolf@redhat.com \
--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 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).