On Mon 05 Feb 2018 04:18:14 PM CET, Max Reitz wrote: > Basically, bdrv_refresh_filename() should respect all children of a > BlockDriverState. However, generally those children are driver-specific, > so this function cannot handle the general case. On the other hand, > there are only few drivers which use other children than @file and > @backing (that being vmdk, quorum, and blkverify). > > Most block drivers only use @file and/or @backing (if they use any > children at all). Both can be implemented directly in > bdrv_refresh_filename. > > The user overriding the file's filename is already handled, however, the > user overriding the backing file is not. If this is done, opening the > BDS with the plain filename of its file will not be correct, so we may > not set bs->exact_filename in that case. > > iotests 051 and 191 contain test cases for overwriting the backing file, > and so their output changes with this patch applied (which I consider a > good thing). Note that in the case of 191, the implicitly opened > (non-overridden) base file is included in the json:{} filename as well > -- this will be remedied by a later patch. > > Signed-off-by: Max Reitz <mre...@redhat.com>
Reviewed-by: Alberto Garcia <be...@igalia.com> Berto