• J
    storage: Fix virStorageBackendUpdateVolTargetInfo type check · d04bb05f
    John Ferlan 提交于
    For volume processing in virStorageBackendUpdateVolTargetInfo to get
    the capacity commit id 'a760ba3a' added the ability to probe a volume
    that didn't list a target format. Unfortunately, the code used the
    virStorageSource  (e.g. target->type - virStorageType) rather than
    virStorageVolDef (e.g. vol->type - virStorageVolType) in order to
    make the comparison. As it turns out target->type for a volume is
    not filled in at all for a voldef as the code relies on vol->type.
    Ironically the result is that only VIR_STORAGE_VOL_BLOCK's would get
    their capacity updated.
    
    This patch will adjust the code to check the "vol->type" field instead
    as an argument. This way for a voldef, the correct comparison is made.
    
    Additionally for a backingStore, the 'type' field is never filled in;
    however, since we know that the provided path is a location at which
    the backing store can be accessed on the local filesystem thus just
    pass VIR_STORAGE_VOL_FILE in order to satisfy the adjusted voltype
    check. Whether it's a FILE or a BLOCK only matters if we're trying to
    get more data based on the target->format.
    d04bb05f
storage_backend_fs.c 48.7 KB