Lines Matching refs:granularity

72     int64_t granularity;  member
148 uint64_t self_start_chunk = offset / s->granularity; in mirror_wait_on_conflicts()
149 uint64_t self_end_chunk = DIV_ROUND_UP(offset + bytes, s->granularity); in mirror_wait_on_conflicts()
159 uint64_t op_start_chunk = op->offset / s->granularity; in mirror_wait_on_conflicts()
161 s->granularity) - in mirror_wait_on_conflicts()
214 chunk_num = op->offset / s->granularity; in mirror_iteration_done()
215 nb_chunks = DIV_ROUND_UP(op->bytes, s->granularity); in mirror_iteration_done()
288 int max_bytes = s->granularity * s->max_iov; in mirror_cow_align()
290 need_cow = !test_bit(*offset / s->granularity, s->cow_bitmap); in mirror_cow_align()
291 need_cow |= !test_bit((*offset + *bytes - 1) / s->granularity, in mirror_cow_align()
354 max_bytes = s->granularity * s->max_iov; in mirror_co_read()
371 assert(QEMU_IS_ALIGNED(op->offset, s->granularity)); in mirror_co_read()
374 nb_chunks = DIV_ROUND_UP(op->bytes, s->granularity); in mirror_co_read()
391 qemu_iovec_add(&op->qiov, buf, MIN(s->granularity, remaining)); in mirror_co_read()
516 while (nb_chunks * s->granularity < s->buf_size) { in mirror_iteration()
518 int64_t next_offset = offset + nb_chunks * s->granularity; in mirror_iteration()
519 int64_t next_chunk = next_offset / s->granularity; in mirror_iteration()
543 nb_chunks * s->granularity); in mirror_iteration()
555 .bytes = nb_chunks * s->granularity, in mirror_iteration()
561 bitmap_set(s->in_flight_bitmap, offset / s->granularity, nb_chunks); in mirror_iteration()
568 assert(!(offset % s->granularity)); in mirror_iteration()
571 nb_chunks * s->granularity, in mirror_iteration()
575 io_bytes = MIN(nb_chunks * s->granularity, max_io_bytes); in mirror_iteration()
580 io_bytes -= io_bytes % s->granularity; in mirror_iteration()
581 if (io_bytes < s->granularity) { in mirror_iteration()
582 io_bytes = s->granularity; in mirror_iteration()
617 nb_chunks -= DIV_ROUND_UP(io_bytes, s->granularity); in mirror_iteration()
629 int granularity = s->granularity; in mirror_free_init() local
639 buf_size -= granularity; in mirror_free_init()
640 buf += granularity; in mirror_free_init()
863 QEMU_ALIGN_DOWN(INT_MAX, s->granularity)); in mirror_dirty_init()
891 QEMU_ALIGN_DOWN(INT_MAX, s->granularity)); in mirror_dirty_init()
994 length = DIV_ROUND_UP(s->bdev_length, s->granularity); in mirror_run()
1010 s->granularity < s->target_cluster_size) { in mirror_run()
1358 if (!QEMU_IS_ALIGNED(offset, job->granularity) && in do_sync_target_write()
1378 qiov_offset = QEMU_ALIGN_UP(offset, job->granularity) - offset; in do_sync_target_write()
1387 if (!QEMU_IS_ALIGNED(offset + bytes, job->granularity) && in do_sync_target_write()
1390 uint64_t tail = (offset + bytes) % job->granularity; in do_sync_target_write()
1403 bitmap_offset = QEMU_ALIGN_UP(offset, job->granularity); in do_sync_target_write()
1404 bitmap_end = QEMU_ALIGN_DOWN(offset + bytes, job->granularity); in do_sync_target_write()
1445 bitmap_offset = QEMU_ALIGN_DOWN(offset, job->granularity); in do_sync_target_write()
1446 bitmap_end = QEMU_ALIGN_UP(offset + bytes, job->granularity); in do_sync_target_write()
1465 uint64_t start_chunk = offset / s->granularity; in active_write_prepare()
1466 uint64_t end_chunk = DIV_ROUND_UP(offset + bytes, s->granularity); in active_write_prepare()
1504 uint64_t start_chunk = op->offset / op->s->granularity; in active_write_settle()
1506 op->s->granularity); in active_write_settle()
1725 uint32_t granularity, int64_t buf_size, in mirror_start_job() argument
1748 if (granularity == 0) { in mirror_start_job()
1749 granularity = bdrv_get_default_bitmap_granularity(target); in mirror_start_job()
1752 assert(is_power_of_2(granularity)); in mirror_start_job()
1897 s->granularity = granularity; in mirror_start_job()
1898 s->buf_size = ROUND_UP(buf_size, granularity); in mirror_start_job()
1905 s->dirty_bitmap = bdrv_create_dirty_bitmap(s->mirror_top_bs, granularity, in mirror_start_job()
2020 uint32_t granularity, int64_t buf_size, in mirror_start() argument
2046 speed, granularity, buf_size, backing_mode, zero_target, in mirror_start()