copy-on-read.c (c416eecea5f3aea863ab8fda5a36a24157b8f704) copy-on-read.c (061ca8a368165fae300748c17971824a089f521f)
1/*
2 * Copy-on-read filter block driver
3 *
4 * Copyright (c) 2018 Red Hat, Inc.
5 *
6 * Author:
7 * Max Reitz <mreitz@redhat.com>
8 *

--- 66 unchanged lines hidden (view full) ---

75
76
77static int64_t cor_getlength(BlockDriverState *bs)
78{
79 return bdrv_getlength(bs->file->bs);
80}
81
82
1/*
2 * Copy-on-read filter block driver
3 *
4 * Copyright (c) 2018 Red Hat, Inc.
5 *
6 * Author:
7 * Max Reitz <mreitz@redhat.com>
8 *

--- 66 unchanged lines hidden (view full) ---

75
76
77static int64_t cor_getlength(BlockDriverState *bs)
78{
79 return bdrv_getlength(bs->file->bs);
80}
81
82
83static int cor_truncate(BlockDriverState *bs, int64_t offset,
84 PreallocMode prealloc, Error **errp)
83static int coroutine_fn cor_co_truncate(BlockDriverState *bs, int64_t offset,
84 PreallocMode prealloc, Error **errp)
85{
85{
86 return bdrv_truncate(bs->file, offset, prealloc, errp);
86 return bdrv_co_truncate(bs->file, offset, prealloc, errp);
87}
88
89
90static int coroutine_fn cor_co_preadv(BlockDriverState *bs,
91 uint64_t offset, uint64_t bytes,
92 QEMUIOVector *qiov, int flags)
93{
94 return bdrv_co_preadv(bs->file, offset, bytes, qiov,

--- 47 unchanged lines hidden (view full) ---

142BlockDriver bdrv_copy_on_read = {
143 .format_name = "copy-on-read",
144
145 .bdrv_open = cor_open,
146 .bdrv_close = cor_close,
147 .bdrv_child_perm = cor_child_perm,
148
149 .bdrv_getlength = cor_getlength,
87}
88
89
90static int coroutine_fn cor_co_preadv(BlockDriverState *bs,
91 uint64_t offset, uint64_t bytes,
92 QEMUIOVector *qiov, int flags)
93{
94 return bdrv_co_preadv(bs->file, offset, bytes, qiov,

--- 47 unchanged lines hidden (view full) ---

142BlockDriver bdrv_copy_on_read = {
143 .format_name = "copy-on-read",
144
145 .bdrv_open = cor_open,
146 .bdrv_close = cor_close,
147 .bdrv_child_perm = cor_child_perm,
148
149 .bdrv_getlength = cor_getlength,
150 .bdrv_truncate = cor_truncate,
150 .bdrv_co_truncate = cor_co_truncate,
151
152 .bdrv_co_preadv = cor_co_preadv,
153 .bdrv_co_pwritev = cor_co_pwritev,
154 .bdrv_co_pwrite_zeroes = cor_co_pwrite_zeroes,
155 .bdrv_co_pdiscard = cor_co_pdiscard,
156
157 .bdrv_eject = cor_eject,
158 .bdrv_lock_medium = cor_lock_medium,

--- 15 unchanged lines hidden ---
151
152 .bdrv_co_preadv = cor_co_preadv,
153 .bdrv_co_pwritev = cor_co_pwritev,
154 .bdrv_co_pwrite_zeroes = cor_co_pwrite_zeroes,
155 .bdrv_co_pdiscard = cor_co_pdiscard,
156
157 .bdrv_eject = cor_eject,
158 .bdrv_lock_medium = cor_lock_medium,

--- 15 unchanged lines hidden ---