mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-09-06 18:05:37 +00:00
block: extract bdrv_setup_io_funcs()
Move the code to install coroutine and aio emulation function pointers in a BlockDriver to its own function. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
e0c47b6cb1
commit
0eb7217e49
7
block.c
7
block.c
|
@ -349,7 +349,7 @@ void bdrv_get_full_backing_filename(BlockDriverState *bs, char *dest, size_t sz,
|
||||||
dest, sz, errp);
|
dest, sz, errp);
|
||||||
}
|
}
|
||||||
|
|
||||||
void bdrv_register(BlockDriver *bdrv)
|
void bdrv_setup_io_funcs(BlockDriver *bdrv)
|
||||||
{
|
{
|
||||||
/* Block drivers without coroutine functions need emulation */
|
/* Block drivers without coroutine functions need emulation */
|
||||||
if (!bdrv->bdrv_co_readv) {
|
if (!bdrv->bdrv_co_readv) {
|
||||||
|
@ -365,6 +365,11 @@ void bdrv_register(BlockDriver *bdrv)
|
||||||
bdrv->bdrv_aio_writev = bdrv_aio_writev_em;
|
bdrv->bdrv_aio_writev = bdrv_aio_writev_em;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void bdrv_register(BlockDriver *bdrv)
|
||||||
|
{
|
||||||
|
bdrv_setup_io_funcs(bdrv);
|
||||||
|
|
||||||
QLIST_INSERT_HEAD(&bdrv_drivers, bdrv, list);
|
QLIST_INSERT_HEAD(&bdrv_drivers, bdrv, list);
|
||||||
}
|
}
|
||||||
|
|
|
@ -439,6 +439,14 @@ extern BlockDriver bdrv_file;
|
||||||
extern BlockDriver bdrv_raw;
|
extern BlockDriver bdrv_raw;
|
||||||
extern BlockDriver bdrv_qcow2;
|
extern BlockDriver bdrv_qcow2;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* bdrv_setup_io_funcs:
|
||||||
|
*
|
||||||
|
* Prepare a #BlockDriver for I/O request processing by populating
|
||||||
|
* unimplemented coroutine and AIO interfaces with generic wrapper functions
|
||||||
|
* that fall back to implemented interfaces.
|
||||||
|
*/
|
||||||
|
void bdrv_setup_io_funcs(BlockDriver *bdrv);
|
||||||
|
|
||||||
int get_tmp_filename(char *filename, int size);
|
int get_tmp_filename(char *filename, int size);
|
||||||
BlockDriver *bdrv_probe_all(const uint8_t *buf, int buf_size,
|
BlockDriver *bdrv_probe_all(const uint8_t *buf, int buf_size,
|
||||||
|
|
Loading…
Reference in a new issue