Home
last modified time | relevance | path

Searched refs:bs (Results 1 – 25 of 281) sorted by relevance

12345678910>>...12

/openbmc/qemu/block/
H A Dfilter-compress.c31 static int compress_open(BlockDriverState *bs, QDict *options, int flags, in compress_open() argument
34 int ret = bdrv_open_file_child(NULL, options, "file", bs, errp); in compress_open()
41 if (!bs->file->bs->drv || !block_driver_can_compress(bs->file->bs->drv)) { in compress_open()
44 bdrv_get_format_name(bs->file->bs) ?: "(no format)"); in compress_open()
49 bs->supported_write_flags = BDRV_REQ_WRITE_UNCHANGED | in compress_open()
50 (BDRV_REQ_FUA & bs->file->bs->supported_write_flags); in compress_open()
52 bs->supported_zero_flags = BDRV_REQ_WRITE_UNCHANGED | in compress_open()
54 bs->file->bs->supported_zero_flags); in compress_open()
61 compress_co_getlength(BlockDriverState *bs) in compress_co_getlength() argument
63 return bdrv_co_getlength(bs->file->bs); in compress_co_getlength()
[all …]
H A Dio.c50 bdrv_parent_cb_resize(BlockDriverState *bs);
52 static int coroutine_fn bdrv_co_do_pwrite_zeroes(BlockDriverState *bs,
56 bdrv_parent_drained_begin(BlockDriverState *bs, BdrvChild *ignore) in bdrv_parent_drained_begin() argument
62 QLIST_FOREACH_SAFE(c, &bs->parents, next_parent, next) { in bdrv_parent_drained_begin()
83 bdrv_parent_drained_end(BlockDriverState *bs, BdrvChild *ignore) in bdrv_parent_drained_end() argument
89 QLIST_FOREACH(c, &bs->parents, next_parent) { in bdrv_parent_drained_end()
108 bdrv_parent_drained_poll(BlockDriverState *bs, BdrvChild *ignore, in bdrv_parent_drained_poll() argument
116 QLIST_FOREACH_SAFE(c, &bs->parents, next_parent, next) { in bdrv_parent_drained_poll()
156 BlockDriverState *bs; member
164 s->bs->bl = s->old_bl; in bdrv_refresh_limits_abort()
[all …]
H A Draw-format.c99 raw_apply_options(BlockDriverState *bs, BDRVRawState *s, uint64_t offset, in raw_apply_options() argument
104 real_size = bdrv_getlength(bs->file->bs); in raw_apply_options()
152 assert(reopen_state->bs != NULL); in raw_reopen_prepare()
162 ret = raw_apply_options(reopen_state->bs, reopen_state->opaque, in raw_reopen_prepare()
174 BDRVRawState *s = state->bs->opaque; in raw_reopen_commit()
189 static inline int raw_adjust_offset(BlockDriverState *bs, int64_t *offset, in raw_adjust_offset() argument
192 BDRVRawState *s = bs->opaque; in raw_adjust_offset()
210 raw_co_preadv(BlockDriverState *bs, int64_t offset, int64_t bytes, in raw_co_preadv() argument
215 ret = raw_adjust_offset(bs, &offset, bytes, false); in raw_co_preadv()
220 BLKDBG_CO_EVENT(bs->file, BLKDBG_READ_AIO); in raw_co_preadv()
[all …]
H A Dsnapshot.c53 int bdrv_snapshot_find(BlockDriverState *bs, QEMUSnapshotInfo *sn_info, in bdrv_snapshot_find() argument
62 nb_sns = bdrv_snapshot_list(bs, &sn_tab); in bdrv_snapshot_find()
98 bool bdrv_snapshot_find_by_id_and_name(BlockDriverState *bs, in bdrv_snapshot_find_by_id_and_name() argument
111 nb_sns = bdrv_snapshot_list(bs, &sn_tab); in bdrv_snapshot_find_by_id_and_name()
158 bdrv_snapshot_fallback_child(BlockDriverState *bs) in bdrv_snapshot_fallback_child() argument
160 BdrvChild *fallback = bdrv_primary_child(bs); in bdrv_snapshot_fallback_child()
176 QLIST_FOREACH(child, &bs->children, next) { in bdrv_snapshot_fallback_child()
189 bdrv_snapshot_fallback(BlockDriverState *bs) in bdrv_snapshot_fallback() argument
192 return child_bs(bdrv_snapshot_fallback_child(bs)); in bdrv_snapshot_fallback()
195 int bdrv_can_snapshot(BlockDriverState *bs) in bdrv_can_snapshot() argument
[all …]
H A Dpreallocate.c83 static int preallocate_drop_resize(BlockDriverState *bs, Error **errp);
140 static int preallocate_open(BlockDriverState *bs, QDict *options, int flags, in preallocate_open() argument
143 BDRVPreallocateState *s = bs->opaque; in preallocate_open()
153 s->drop_resize_bh = qemu_bh_new(preallocate_drop_resize_bh, bs); in preallocate_open()
155 ret = bdrv_open_file_child(NULL, options, "file", bs, errp); in preallocate_open()
162 if (!preallocate_absorb_opts(&s->opts, options, bs->file->bs, errp)) { in preallocate_open()
166 bs->supported_write_flags = BDRV_REQ_WRITE_UNCHANGED | in preallocate_open()
167 (BDRV_REQ_FUA & bs->file->bs->supported_write_flags); in preallocate_open()
169 bs->supported_zero_flags = BDRV_REQ_WRITE_UNCHANGED | in preallocate_open()
171 bs->file->bs->supported_zero_flags); in preallocate_open()
[all …]
H A Dthrottle.c76 static int throttle_open(BlockDriverState *bs, QDict *options, in throttle_open() argument
79 ThrottleGroupMember *tgm = bs->opaque; in throttle_open()
83 ret = bdrv_open_file_child(NULL, options, "file", bs, errp); in throttle_open()
90 bs->supported_write_flags = bs->file->bs->supported_write_flags | in throttle_open()
92 bs->supported_zero_flags = bs->file->bs->supported_zero_flags | in throttle_open()
98 throttle_group_register_tgm(tgm, group, bdrv_get_aio_context(bs)); in throttle_open()
105 static void throttle_close(BlockDriverState *bs) in throttle_close() argument
107 ThrottleGroupMember *tgm = bs->opaque; in throttle_close()
113 throttle_co_getlength(BlockDriverState *bs) in throttle_co_getlength() argument
115 return bdrv_co_getlength(bs->file->bs); in throttle_co_getlength()
[all …]
H A Ddirty-bitmap.c34 BlockDriverState *bs; member
64 static inline void bdrv_dirty_bitmaps_lock(BlockDriverState *bs) in bdrv_dirty_bitmaps_lock() argument
66 qemu_mutex_lock(&bs->dirty_bitmap_mutex); in bdrv_dirty_bitmaps_lock()
69 static inline void bdrv_dirty_bitmaps_unlock(BlockDriverState *bs) in bdrv_dirty_bitmaps_unlock() argument
71 qemu_mutex_unlock(&bs->dirty_bitmap_mutex); in bdrv_dirty_bitmaps_unlock()
76 bdrv_dirty_bitmaps_lock(bitmap->bs); in bdrv_dirty_bitmap_lock()
81 bdrv_dirty_bitmaps_unlock(bitmap->bs); in bdrv_dirty_bitmap_unlock()
85 BdrvDirtyBitmap *bdrv_find_dirty_bitmap(BlockDriverState *bs, const char *name) in bdrv_find_dirty_bitmap() argument
90 QLIST_FOREACH(bm, &bs->dirty_bitmaps, list) { in bdrv_find_dirty_bitmap()
99 BdrvDirtyBitmap *bdrv_create_dirty_bitmap(BlockDriverState *bs, in bdrv_create_dirty_bitmap() argument
[all …]
H A Dreplication.c82 static int replication_open(BlockDriverState *bs, QDict *options, in replication_open() argument
86 BDRVReplicationState *s = bs->opaque; in replication_open()
91 ret = bdrv_open_file_child(NULL, options, "file", bs, errp); in replication_open()
130 s->rs = replication_new(bs, &replication_ops); in replication_open()
139 static void replication_close(BlockDriverState *bs) in replication_close() argument
141 BDRVReplicationState *s = bs->opaque; in replication_close()
161 static void replication_child_perm(BlockDriverState *bs, BdrvChild *c, in replication_child_perm() argument
173 if ((bs->open_flags & (BDRV_O_INACTIVE | BDRV_O_RDWR)) == BDRV_O_RDWR) { in replication_child_perm()
182 replication_co_getlength(BlockDriverState *bs) in replication_co_getlength() argument
184 return bdrv_co_getlength(bs->file->bs); in replication_co_getlength()
[all …]
H A Dcopy-on-read.c39 cor_open(BlockDriverState *bs, QDict *options, int flags, Error **errp) in cor_open() argument
42 BDRVStateCOR *state = bs->opaque; in cor_open()
49 ret = bdrv_open_file_child(NULL, options, "file", bs, errp); in cor_open()
56 bs->supported_read_flags = BDRV_REQ_PREFETCH; in cor_open()
58 bs->supported_write_flags = BDRV_REQ_WRITE_UNCHANGED | in cor_open()
59 (BDRV_REQ_FUA & bs->file->bs->supported_write_flags); in cor_open()
61 bs->supported_zero_flags = BDRV_REQ_WRITE_UNCHANGED | in cor_open()
63 bs->file->bs->supported_zero_flags); in cor_open()
84 if (bdrv_freeze_backing_chain(bs, bottom_bs, errp) < 0) { in cor_open()
111 static void cor_child_perm(BlockDriverState *bs, BdrvChild *c, in cor_child_perm() argument
[all …]
H A Dblkreplay.c24 static int blkreplay_open(BlockDriverState *bs, QDict *options, int flags, in blkreplay_open() argument
30 ret = bdrv_open_file_child(NULL, options, "image", bs, errp); in blkreplay_open()
35 bs->supported_write_flags = BDRV_REQ_WRITE_UNCHANGED; in blkreplay_open()
36 bs->supported_zero_flags = BDRV_REQ_WRITE_UNCHANGED; in blkreplay_open()
44 blkreplay_co_getlength(BlockDriverState *bs) in blkreplay_co_getlength() argument
46 return bdrv_co_getlength(bs->file->bs); in blkreplay_co_getlength()
62 static void block_request_create(uint64_t reqid, BlockDriverState *bs, in block_request_create() argument
68 .bh = aio_bh_new(bdrv_get_aio_context(bs), blkreplay_bh_cb, req), in block_request_create()
74 blkreplay_co_preadv(BlockDriverState *bs, int64_t offset, int64_t bytes, in blkreplay_co_preadv() argument
78 int ret = bdrv_co_preadv(bs->file, offset, bytes, qiov, flags); in blkreplay_co_preadv()
[all …]
H A Dsnapshot-access.c30 snapshot_access_co_preadv_part(BlockDriverState *bs, in snapshot_access_co_preadv_part() argument
39 return bdrv_co_preadv_snapshot(bs->file, offset, bytes, qiov, qiov_offset); in snapshot_access_co_preadv_part()
43 snapshot_access_co_block_status(BlockDriverState *bs, in snapshot_access_co_block_status() argument
48 return bdrv_co_snapshot_block_status(bs->file->bs, mode, offset, in snapshot_access_co_block_status()
53 snapshot_access_co_pdiscard(BlockDriverState *bs, int64_t offset, int64_t bytes) in snapshot_access_co_pdiscard() argument
55 return bdrv_co_pdiscard_snapshot(bs->file->bs, offset, bytes); in snapshot_access_co_pdiscard()
59 snapshot_access_co_pwrite_zeroes(BlockDriverState *bs, in snapshot_access_co_pwrite_zeroes() argument
67 snapshot_access_co_pwritev_part(BlockDriverState *bs, in snapshot_access_co_pwritev_part() argument
76 static void GRAPH_RDLOCK snapshot_access_refresh_filename(BlockDriverState *bs) in snapshot_access_refresh_filename() argument
78 pstrcpy(bs->exact_filename, sizeof(bs->exact_filename), in snapshot_access_refresh_filename()
[all …]
H A Dblkverify.c28 BlockDriverState *bs; member
112 static int blkverify_open(BlockDriverState *bs, QDict *options, int flags, in blkverify_open() argument
115 BDRVBlkverifyState *s = bs->opaque; in blkverify_open()
127 bs, errp); in blkverify_open()
134 "test", bs, &child_of_bds, BDRV_CHILD_DATA, in blkverify_open()
141 bs->supported_write_flags = BDRV_REQ_WRITE_UNCHANGED; in blkverify_open()
142 bs->supported_zero_flags = BDRV_REQ_WRITE_UNCHANGED; in blkverify_open()
150 static void blkverify_close(BlockDriverState *bs) in blkverify_close() argument
152 BDRVBlkverifyState *s = bs->opaque; in blkverify_close()
155 bdrv_unref_child(bs, s->test_file); in blkverify_close()
[all …]
H A Dcopy-before-write.c84 cbw_co_preadv(BlockDriverState *bs, int64_t offset, int64_t bytes, in cbw_co_preadv() argument
87 return bdrv_co_preadv(bs->file, offset, bytes, qiov, flags); in cbw_co_preadv()
92 BlockDriverState *bs = opaque; in block_copy_cb() local
94 bdrv_dec_in_flight(bs); in block_copy_cb()
106 static coroutine_fn int cbw_do_copy_before_write(BlockDriverState *bs, in cbw_do_copy_before_write() argument
109 BDRVCopyBeforeWriteState *s = bs->opaque; in cbw_do_copy_before_write()
132 bdrv_inc_in_flight(bs); in cbw_do_copy_before_write()
134 block_copy_cb, bs); in cbw_do_copy_before_write()
155 cbw_co_pdiscard(BlockDriverState *bs, int64_t offset, int64_t bytes) in cbw_co_pdiscard() argument
157 int ret = cbw_do_copy_before_write(bs, offset, bytes, 0); in cbw_co_pdiscard()
[all …]
H A Dnull.c80 static int null_open(BlockDriverState *bs, QDict *options, int flags, in null_open() argument
84 BDRVNullState *s = bs->opaque; in null_open()
99 bs->supported_write_flags = BDRV_REQ_FUA; in null_open()
103 static int64_t coroutine_fn null_co_getlength(BlockDriverState *bs) in null_co_getlength() argument
105 BDRVNullState *s = bs->opaque; in null_co_getlength()
109 static coroutine_fn int null_co_common(BlockDriverState *bs) in null_co_common() argument
111 BDRVNullState *s = bs->opaque; in null_co_common()
119 static coroutine_fn int null_co_preadv(BlockDriverState *bs, in null_co_preadv() argument
124 BDRVNullState *s = bs->opaque; in null_co_preadv()
130 return null_co_common(bs); in null_co_preadv()
[all …]
H A Dwrite-threshold.c21 uint64_t bdrv_write_threshold_get(const BlockDriverState *bs) in bdrv_write_threshold_get() argument
23 return bs->write_threshold_offset; in bdrv_write_threshold_get()
26 void bdrv_write_threshold_set(BlockDriverState *bs, uint64_t threshold_bytes) in bdrv_write_threshold_set() argument
28 bs->write_threshold_offset = threshold_bytes; in bdrv_write_threshold_set()
35 BlockDriverState *bs; in qmp_block_set_write_threshold() local
37 bs = bdrv_find_node(node_name); in qmp_block_set_write_threshold()
38 if (!bs) { in qmp_block_set_write_threshold()
43 bdrv_write_threshold_set(bs, threshold_bytes); in qmp_block_set_write_threshold()
46 void bdrv_write_threshold_check_write(BlockDriverState *bs, int64_t offset, in bdrv_write_threshold_check_write() argument
50 uint64_t wtr = bs->write_threshold_offset; in bdrv_write_threshold_check_write()
[all …]
H A Dqcow2-cluster.c35 int coroutine_fn qcow2_shrink_l1_table(BlockDriverState *bs, in qcow2_shrink_l1_table() argument
38 BDRVQcow2State *s = bs->opaque; in qcow2_shrink_l1_table()
51 BLKDBG_CO_EVENT(bs->file, BLKDBG_L1_SHRINK_WRITE_TABLE); in qcow2_shrink_l1_table()
52 ret = bdrv_co_pwrite_zeroes(bs->file, in qcow2_shrink_l1_table()
59 ret = bdrv_co_flush(bs->file->bs); in qcow2_shrink_l1_table()
64 BLKDBG_CO_EVENT(bs->file, BLKDBG_L1_SHRINK_FREE_L2_CLUSTERS); in qcow2_shrink_l1_table()
69 qcow2_free_clusters(bs, s->l1_table[i] & L1E_OFFSET_MASK, in qcow2_shrink_l1_table()
86 int qcow2_grow_l1_table(BlockDriverState *bs, uint64_t min_size, in qcow2_grow_l1_table() argument
89 BDRVQcow2State *s = bs->opaque; in qcow2_grow_l1_table()
130 new_l1_table = qemu_try_blockalign(bs->file->bs, new_l1_size2); in qcow2_grow_l1_table()
[all …]
H A Damend.c41 BlockDriverState *bs; member
52 ret = s->bs->drv->bdrv_co_amend(s->bs, s->opts, s->force, errp); in blockdev_amend_run()
61 if (s->bs->drv->bdrv_amend_pre_run) { in blockdev_amend_pre_run()
62 return s->bs->drv->bdrv_amend_pre_run(s->bs, errp); in blockdev_amend_pre_run()
73 if (s->bs->drv->bdrv_amend_clean) { in blockdev_amend_free()
74 s->bs->drv->bdrv_amend_clean(s->bs); in blockdev_amend_free()
78 bdrv_unref(s->bs); in blockdev_amend_free()
98 BlockDriverState *bs; in qmp_x_blockdev_amend() local
102 bs = bdrv_lookup_bs(NULL, node_name, errp); in qmp_x_blockdev_amend()
103 if (!bs) { in qmp_x_blockdev_amend()
[all …]
H A Dqcow2.c78 qcow2_co_preadv_compressed(BlockDriverState *bs,
103 BlockDriverState *bs = opaque; in qcow2_crypto_hdr_read_func() local
104 BDRVQcow2State *s = bs->opaque; in qcow2_crypto_hdr_read_func()
112 ret = bdrv_pread(bs->file, s->crypto_header.offset + offset, buflen, buf, in qcow2_crypto_hdr_read_func()
126 BlockDriverState *bs = opaque; in qcow2_crypto_hdr_init_func() local
127 BDRVQcow2State *s = bs->opaque; in qcow2_crypto_hdr_init_func()
131 ret = qcow2_alloc_clusters(bs, headerlen); in qcow2_crypto_hdr_init_func()
148 assert(qcow2_pre_write_overlap_check(bs, 0, ret, clusterlen, false) == 0); in qcow2_crypto_hdr_init_func()
149 ret = bdrv_co_pwrite_zeroes(bs->file, ret, clusterlen, 0); in qcow2_crypto_hdr_init_func()
165 BlockDriverState *bs = opaque; in qcow2_crypto_hdr_write_func() local
[all …]
/openbmc/qemu/include/block/
H A Dblock-io.h80 int64_t coroutine_fn GRAPH_RDLOCK bdrv_co_nb_sectors(BlockDriverState *bs);
81 int64_t coroutine_mixed_fn bdrv_nb_sectors(BlockDriverState *bs);
83 int64_t coroutine_fn GRAPH_RDLOCK bdrv_co_getlength(BlockDriverState *bs);
84 int64_t co_wrapper_mixed_bdrv_rdlock bdrv_getlength(BlockDriverState *bs);
87 bdrv_co_get_allocated_file_size(BlockDriverState *bs);
90 bdrv_get_allocated_file_size(BlockDriverState *bs);
96 bdrv_co_delete_file(BlockDriverState *bs, Error **errp);
99 bdrv_co_delete_file_noerr(BlockDriverState *bs);
107 bdrv_co_ioctl(BlockDriverState *bs, int req, void *buf);
110 int coroutine_fn GRAPH_RDLOCK bdrv_co_flush(BlockDriverState *bs);
[all …]
H A Dblock_int-common.h77 BlockDriverState *bs; member
213 BlockDriverState *bs, Error **errp);
218 void GRAPH_RDLOCK_PTR (*bdrv_amend_clean)(BlockDriverState *bs);
226 BlockDriverState *bs, BlockDriverState *to_replace);
249 BlockDriverState *bs, QDict *options, int flags, Error **errp);
251 void GRAPH_UNLOCKED_PTR (*bdrv_close)(BlockDriverState *bs);
260 BlockDriverState *bs, QemuOpts *opts,
264 int GRAPH_RDLOCK_PTR (*bdrv_make_empty)(BlockDriverState *bs);
270 void GRAPH_RDLOCK_PTR (*bdrv_refresh_filename)(BlockDriverState *bs);
294 BlockDriverState *bs, QDict *target, bool backing_overridden);
[all …]
H A Dblock-global-state.h80 bdrv_insert_node(BlockDriverState *bs, QDict *node_options, int flags,
82 int bdrv_drop_filter(BlockDriverState *bs, Error **errp);
106 bdrv_set_backing_hd(BlockDriverState *bs, BlockDriverState *backing_hd,
109 int bdrv_open_backing_file(BlockDriverState *bs, QDict *parent_options,
127 bdrv_reopen_queue(BlockReopenQueue *bs_queue, BlockDriverState *bs,
132 int bdrv_reopen(BlockDriverState *bs, QDict *opts, bool keep_old_opts,
134 int bdrv_reopen_set_read_only(BlockDriverState *bs, bool read_only,
136 BlockDriverState *bdrv_find_backing_image(BlockDriverState *bs,
138 void GRAPH_RDLOCK bdrv_refresh_filename(BlockDriverState *bs);
141 bdrv_refresh_limits(BlockDriverState *bs, Transaction *tran, Error **errp);
[all …]
H A Dblock_int-io.h41 BlockDriverState *bs, unsigned int mode, int64_t offset,
43 int coroutine_fn GRAPH_RDLOCK bdrv_co_pdiscard_snapshot(BlockDriverState *bs,
82 BdrvTrackedRequest *coroutine_fn bdrv_co_get_self_request(BlockDriverState *bs);
100 void bdrv_wakeup(BlockDriverState *bs);
102 const char * GRAPH_RDLOCK bdrv_get_parent_name(const BlockDriverState *bs);
106 void bdrv_set_dirty(BlockDriverState *bs, int64_t offset, int64_t bytes);
113 void bdrv_inc_in_flight(BlockDriverState *bs);
114 void bdrv_dec_in_flight(BlockDriverState *bs);
128 bdrv_co_refresh_total_sectors(BlockDriverState *bs, int64_t hint);
131 bdrv_refresh_total_sectors(BlockDriverState *bs, int64_t hint);
[all …]
/openbmc/qemu/
H A Dblock.c92 static bool bdrv_recurse_has_child(BlockDriverState *bs,
107 static bool bdrv_backing_overridden(BlockDriverState *bs);
110 bdrv_change_aio_context(BlockDriverState *bs, AioContext *ctx,
136 size_t bdrv_opt_mem_align(BlockDriverState *bs) in bdrv_opt_mem_align() argument
138 if (!bs || !bs->drv) { in bdrv_opt_mem_align()
144 return bs->bl.opt_mem_alignment; in bdrv_opt_mem_align()
147 size_t bdrv_min_mem_align(BlockDriverState *bs) in bdrv_min_mem_align() argument
149 if (!bs || !bs->drv) { in bdrv_min_mem_align()
155 return bs->bl.min_mem_alignment; in bdrv_min_mem_align()
277 bool bdrv_is_read_only(BlockDriverState *bs) in bdrv_is_read_only() argument
[all …]
/openbmc/qemu/tests/unit/
H A Dtest-write-threshold.c17 BlockDriverState bs; in test_threshold_not_trigger() local
19 memset(&bs, 0, sizeof(bs)); in test_threshold_not_trigger()
21 bdrv_write_threshold_set(&bs, threshold); in test_threshold_not_trigger()
22 bdrv_write_threshold_check_write(&bs, 1024, 1024); in test_threshold_not_trigger()
23 g_assert_cmpuint(bdrv_write_threshold_get(&bs), ==, threshold); in test_threshold_not_trigger()
30 BlockDriverState bs; in test_threshold_trigger() local
32 memset(&bs, 0, sizeof(bs)); in test_threshold_trigger()
34 bdrv_write_threshold_set(&bs, threshold); in test_threshold_trigger()
35 bdrv_write_threshold_check_write(&bs, threshold - 1024, 2 * 1024); in test_threshold_trigger()
36 g_assert_cmpuint(bdrv_write_threshold_get(&bs), ==, 0); in test_threshold_trigger()
/openbmc/qemu/block/monitor/
H A Dbitmap-qmp-cmds.c58 BlockDriverState *bs; in block_dirty_bitmap_lookup() local
71 bs = bdrv_lookup_bs(node, node, NULL); in block_dirty_bitmap_lookup()
72 if (!bs) { in block_dirty_bitmap_lookup()
77 bitmap = bdrv_find_dirty_bitmap(bs, name); in block_dirty_bitmap_lookup()
84 *pbs = bs; in block_dirty_bitmap_lookup()
96 BlockDriverState *bs; in qmp_block_dirty_bitmap_add() local
104 bs = bdrv_lookup_bs(node, node, errp); in qmp_block_dirty_bitmap_add()
105 if (!bs) { in qmp_block_dirty_bitmap_add()
117 granularity = bdrv_get_default_bitmap_granularity(bs); in qmp_block_dirty_bitmap_add()
129 !bdrv_can_store_new_dirty_bitmap(bs, name, granularity, errp)) in qmp_block_dirty_bitmap_add()
[all …]

12345678910>>...12