Lines Matching refs:bf
127 ParallelsDirtyBitmapFeature bf; in parallels_load_bitmap() local
134 if (data_size < sizeof(bf)) { in parallels_load_bitmap()
137 data_size, sizeof(bf)); in parallels_load_bitmap()
140 memcpy(&bf, data, sizeof(bf)); in parallels_load_bitmap()
141 bf.size = le64_to_cpu(bf.size); in parallels_load_bitmap()
142 bf.granularity = le32_to_cpu(bf.granularity) << BDRV_SECTOR_BITS; in parallels_load_bitmap()
143 bf.l1_size = le32_to_cpu(bf.l1_size); in parallels_load_bitmap()
144 data += sizeof(bf); in parallels_load_bitmap()
145 data_size -= sizeof(bf); in parallels_load_bitmap()
147 if (bf.size != bs->total_sectors) { in parallels_load_bitmap()
149 "disk size in sectors %" PRId64, bf.size, bs->total_sectors); in parallels_load_bitmap()
153 if (bf.l1_size * sizeof(uint64_t) > data_size) { in parallels_load_bitmap()
159 memcpy(&uuid, bf.id, sizeof(uuid)); in parallels_load_bitmap()
161 bitmap = bdrv_create_dirty_bitmap(bs, bf.granularity, uuidstr, errp); in parallels_load_bitmap()
166 l1_table = g_new(uint64_t, bf.l1_size); in parallels_load_bitmap()
167 for (i = 0; i < bf.l1_size; i++, data += sizeof(uint64_t)) { in parallels_load_bitmap()
171 ret = parallels_load_bitmap_data(bs, l1_table, bf.l1_size, bitmap, errp); in parallels_load_bitmap()