Message ID | 1449883528-26477-3-git-send-email-jsnow@redhat.com |
---|---|
State | New |
Headers | show |
On 12.12.2015 02:25, John Snow wrote: > Always report full_backing_filename, even if it's the same as > backing_filename. In the next patch, full_backing_filename may be > omitted if it cannot be generated instead of allowing e.g. drive_query > to abort if it runs into this scenario. > > The presence or absence of the "full" field becomes useful information. > > Signed-off-by: John Snow <jsnow@redhat.com> > --- > block/qapi.c | 7 ++++--- > tests/qemu-iotests/043.out | 2 ++ > 2 files changed, 6 insertions(+), 3 deletions(-) > > diff --git a/block/qapi.c b/block/qapi.c > index 01569da..0e6b333 100644 > --- a/block/qapi.c > +++ b/block/qapi.c > @@ -251,9 +251,10 @@ void bdrv_query_image_info(BlockDriverState *bs, > return; > } > > - if (strcmp(backing_filename, backing_filename2) != 0) { > - info->full_backing_filename = > - g_strdup(backing_filename2); > + /* Always report the full_backing_filename if present, even if it's the > + * same as backing_filename. That they are same is useful info. */ > + if (backing_filename2) { Is there a reason for this non-NULL check? Because it always is non-NULL right now. Max > + info->full_backing_filename = g_strdup(backing_filename2); > info->has_full_backing_filename = true; > } > > diff --git a/tests/qemu-iotests/043.out b/tests/qemu-iotests/043.out > index 33f8cc3..b37d2a3 100644 > --- a/tests/qemu-iotests/043.out > +++ b/tests/qemu-iotests/043.out > @@ -44,6 +44,7 @@ cluster_size: 65536 > "filename": "TEST_DIR/t.IMGFMT", > "cluster-size": 65536, > "format": "IMGFMT", > + "full-backing-filename": "TEST_DIR/t.IMGFMT.2.base", > "backing-filename": "TEST_DIR/t.IMGFMT.2.base", > "dirty-flag": false > }, > @@ -52,6 +53,7 @@ cluster_size: 65536 > "filename": "TEST_DIR/t.IMGFMT.2.base", > "cluster-size": 65536, > "format": "IMGFMT", > + "full-backing-filename": "TEST_DIR/t.IMGFMT.1.base", > "backing-filename": "TEST_DIR/t.IMGFMT.1.base", > "dirty-flag": false > }, >
On 12/14/2015 11:36 AM, Max Reitz wrote: > On 12.12.2015 02:25, John Snow wrote: >> Always report full_backing_filename, even if it's the same as >> backing_filename. In the next patch, full_backing_filename may be >> omitted if it cannot be generated instead of allowing e.g. drive_query >> to abort if it runs into this scenario. >> >> The presence or absence of the "full" field becomes useful information. >> >> Signed-off-by: John Snow <jsnow@redhat.com> >> --- >> block/qapi.c | 7 ++++--- >> tests/qemu-iotests/043.out | 2 ++ >> 2 files changed, 6 insertions(+), 3 deletions(-) >> >> diff --git a/block/qapi.c b/block/qapi.c >> index 01569da..0e6b333 100644 >> --- a/block/qapi.c >> +++ b/block/qapi.c >> @@ -251,9 +251,10 @@ void bdrv_query_image_info(BlockDriverState *bs, >> return; >> } >> >> - if (strcmp(backing_filename, backing_filename2) != 0) { >> - info->full_backing_filename = >> - g_strdup(backing_filename2); >> + /* Always report the full_backing_filename if present, even if it's the >> + * same as backing_filename. That they are same is useful info. */ >> + if (backing_filename2) { > > Is there a reason for this non-NULL check? Because it always is non-NULL > right now. > > Max > No, I was just being convenient with re-ordering patches. It can be NULL by the end of the set. I'll clean it if there's other work to do. >> + info->full_backing_filename = g_strdup(backing_filename2); >> info->has_full_backing_filename = true; >> } >> >> diff --git a/tests/qemu-iotests/043.out b/tests/qemu-iotests/043.out >> index 33f8cc3..b37d2a3 100644 >> --- a/tests/qemu-iotests/043.out >> +++ b/tests/qemu-iotests/043.out >> @@ -44,6 +44,7 @@ cluster_size: 65536 >> "filename": "TEST_DIR/t.IMGFMT", >> "cluster-size": 65536, >> "format": "IMGFMT", >> + "full-backing-filename": "TEST_DIR/t.IMGFMT.2.base", >> "backing-filename": "TEST_DIR/t.IMGFMT.2.base", >> "dirty-flag": false >> }, >> @@ -52,6 +53,7 @@ cluster_size: 65536 >> "filename": "TEST_DIR/t.IMGFMT.2.base", >> "cluster-size": 65536, >> "format": "IMGFMT", >> + "full-backing-filename": "TEST_DIR/t.IMGFMT.1.base", >> "backing-filename": "TEST_DIR/t.IMGFMT.1.base", >> "dirty-flag": false >> }, >> > >
On 14.12.2015 17:38, John Snow wrote: > > > On 12/14/2015 11:36 AM, Max Reitz wrote: >> On 12.12.2015 02:25, John Snow wrote: >>> Always report full_backing_filename, even if it's the same as >>> backing_filename. In the next patch, full_backing_filename may be >>> omitted if it cannot be generated instead of allowing e.g. drive_query >>> to abort if it runs into this scenario. >>> >>> The presence or absence of the "full" field becomes useful information. >>> >>> Signed-off-by: John Snow <jsnow@redhat.com> >>> --- >>> block/qapi.c | 7 ++++--- >>> tests/qemu-iotests/043.out | 2 ++ >>> 2 files changed, 6 insertions(+), 3 deletions(-) >>> >>> diff --git a/block/qapi.c b/block/qapi.c >>> index 01569da..0e6b333 100644 >>> --- a/block/qapi.c >>> +++ b/block/qapi.c >>> @@ -251,9 +251,10 @@ void bdrv_query_image_info(BlockDriverState *bs, >>> return; >>> } >>> >>> - if (strcmp(backing_filename, backing_filename2) != 0) { >>> - info->full_backing_filename = >>> - g_strdup(backing_filename2); >>> + /* Always report the full_backing_filename if present, even if it's the >>> + * same as backing_filename. That they are same is useful info. */ >>> + if (backing_filename2) { >> >> Is there a reason for this non-NULL check? Because it always is non-NULL >> right now. >> >> Max >> > > No, I was just being convenient with re-ordering patches. It can be NULL > by the end of the set. I'll clean it if there's other work to do. Oh, OK, that's fine then. Reviewed-by: Max Reitz <mreitz@redhat.com> > >>> + info->full_backing_filename = g_strdup(backing_filename2); >>> info->has_full_backing_filename = true; >>> } >>> >>> diff --git a/tests/qemu-iotests/043.out b/tests/qemu-iotests/043.out >>> index 33f8cc3..b37d2a3 100644 >>> --- a/tests/qemu-iotests/043.out >>> +++ b/tests/qemu-iotests/043.out >>> @@ -44,6 +44,7 @@ cluster_size: 65536 >>> "filename": "TEST_DIR/t.IMGFMT", >>> "cluster-size": 65536, >>> "format": "IMGFMT", >>> + "full-backing-filename": "TEST_DIR/t.IMGFMT.2.base", >>> "backing-filename": "TEST_DIR/t.IMGFMT.2.base", >>> "dirty-flag": false >>> }, >>> @@ -52,6 +53,7 @@ cluster_size: 65536 >>> "filename": "TEST_DIR/t.IMGFMT.2.base", >>> "cluster-size": 65536, >>> "format": "IMGFMT", >>> + "full-backing-filename": "TEST_DIR/t.IMGFMT.1.base", >>> "backing-filename": "TEST_DIR/t.IMGFMT.1.base", >>> "dirty-flag": false >>> }, >>> >> >> >
diff --git a/block/qapi.c b/block/qapi.c index 01569da..0e6b333 100644 --- a/block/qapi.c +++ b/block/qapi.c @@ -251,9 +251,10 @@ void bdrv_query_image_info(BlockDriverState *bs, return; } - if (strcmp(backing_filename, backing_filename2) != 0) { - info->full_backing_filename = - g_strdup(backing_filename2); + /* Always report the full_backing_filename if present, even if it's the + * same as backing_filename. That they are same is useful info. */ + if (backing_filename2) { + info->full_backing_filename = g_strdup(backing_filename2); info->has_full_backing_filename = true; } diff --git a/tests/qemu-iotests/043.out b/tests/qemu-iotests/043.out index 33f8cc3..b37d2a3 100644 --- a/tests/qemu-iotests/043.out +++ b/tests/qemu-iotests/043.out @@ -44,6 +44,7 @@ cluster_size: 65536 "filename": "TEST_DIR/t.IMGFMT", "cluster-size": 65536, "format": "IMGFMT", + "full-backing-filename": "TEST_DIR/t.IMGFMT.2.base", "backing-filename": "TEST_DIR/t.IMGFMT.2.base", "dirty-flag": false }, @@ -52,6 +53,7 @@ cluster_size: 65536 "filename": "TEST_DIR/t.IMGFMT.2.base", "cluster-size": 65536, "format": "IMGFMT", + "full-backing-filename": "TEST_DIR/t.IMGFMT.1.base", "backing-filename": "TEST_DIR/t.IMGFMT.1.base", "dirty-flag": false },
Always report full_backing_filename, even if it's the same as backing_filename. In the next patch, full_backing_filename may be omitted if it cannot be generated instead of allowing e.g. drive_query to abort if it runs into this scenario. The presence or absence of the "full" field becomes useful information. Signed-off-by: John Snow <jsnow@redhat.com> --- block/qapi.c | 7 ++++--- tests/qemu-iotests/043.out | 2 ++ 2 files changed, 6 insertions(+), 3 deletions(-)