Skip to content
  • Hanna Reitz's avatar
    8df68616
    block: Use bdrv_dirname() for relative filenames · 8df68616
    Hanna Reitz authored
    
    
    bdrv_get_full_backing_filename_from_filename() breaks down when it comes
    to JSON filenames. Using bdrv_dirname() as the basis is better because
    since we have BDS, we can descend through the BDS tree to the protocol
    layer, which gives us a greater probability of finding a non-JSON name;
    also, bdrv_dirname() is more correct as it allows block drivers to
    override the generation of that directory name in a protocol-specific
    way.
    
    We still need to keep bdrv_get_full_backing_filename_from_filename(),
    though, because it has valid callers which need it during image creation
    when no BDS is available yet.
    
    This makes a test case in qemu-iotest 110, which was supposed to fail,
    work. That is actually good, but we need to change the reference output
    (and the comment in 110) accordingly.
    
    Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
    Reviewed-by: default avatarAlberto Garcia <berto@igalia.com>
    Message-id: 20190201192935.18394-20-mreitz@redhat.com
    Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
    8df68616
    block: Use bdrv_dirname() for relative filenames
    Hanna Reitz authored
    
    
    bdrv_get_full_backing_filename_from_filename() breaks down when it comes
    to JSON filenames. Using bdrv_dirname() as the basis is better because
    since we have BDS, we can descend through the BDS tree to the protocol
    layer, which gives us a greater probability of finding a non-JSON name;
    also, bdrv_dirname() is more correct as it allows block drivers to
    override the generation of that directory name in a protocol-specific
    way.
    
    We still need to keep bdrv_get_full_backing_filename_from_filename(),
    though, because it has valid callers which need it during image creation
    when no BDS is available yet.
    
    This makes a test case in qemu-iotest 110, which was supposed to fail,
    work. That is actually good, but we need to change the reference output
    (and the comment in 110) accordingly.
    
    Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
    Reviewed-by: default avatarAlberto Garcia <berto@igalia.com>
    Message-id: 20190201192935.18394-20-mreitz@redhat.com
    Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
Loading