Document allocator functions that require a specific de-allocator call. Reviewed-by: Stefan Hajnoczi <stefa...@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> --- include/block/block.h | 4 ++++ include/qemu/osdep.h | 3 +++ include/sysemu/block-backend.h | 2 ++ 3 files changed, 9 insertions(+)
diff --git a/include/block/block.h b/include/block/block.h index 4de8d8f8a6..480e6b6837 100644 --- a/include/block/block.h +++ b/include/block/block.h @@ -525,9 +525,13 @@ void bdrv_img_create(const char *filename, const char *fmt, size_t bdrv_min_mem_align(BlockDriverState *bs); /* Returns optimal alignment in bytes for bounce buffer */ size_t bdrv_opt_mem_align(BlockDriverState *bs); +/* callers must free the returned pointer with qemu_vfree() */ void *qemu_blockalign(BlockDriverState *bs, size_t size); +/* callers must free the returned pointer with qemu_vfree() */ void *qemu_blockalign0(BlockDriverState *bs, size_t size); +/* callers must free the returned pointer with qemu_vfree() */ void *qemu_try_blockalign(BlockDriverState *bs, size_t size); +/* callers must free the returned pointer with qemu_vfree() */ void *qemu_try_blockalign0(BlockDriverState *bs, size_t size); bool bdrv_qiov_is_aligned(BlockDriverState *bs, QEMUIOVector *qiov); diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h index ff7c17b857..b3eccce762 100644 --- a/include/qemu/osdep.h +++ b/include/qemu/osdep.h @@ -294,8 +294,11 @@ extern int daemon(int, int); #endif int qemu_daemon(int nochdir, int noclose); +/* callers must free the returned pointer with qemu_vfree() */ void *qemu_try_memalign(size_t alignment, size_t size); +/* callers must free the returned pointer with qemu_vfree() */ void *qemu_memalign(size_t alignment, size_t size); +/* callers must free the returned pointer with qemu_anon_ram_free() */ void *qemu_anon_ram_alloc(size_t size, uint64_t *align, bool shared); void qemu_vfree(void *ptr); void qemu_anon_ram_free(void *ptr, size_t size); diff --git a/include/sysemu/block-backend.h b/include/sysemu/block-backend.h index 0917663d89..7996cb61bb 100644 --- a/include/sysemu/block-backend.h +++ b/include/sysemu/block-backend.h @@ -205,7 +205,9 @@ uint32_t blk_get_request_alignment(BlockBackend *blk); uint32_t blk_get_max_transfer(BlockBackend *blk); int blk_get_max_iov(BlockBackend *blk); void blk_set_guest_block_size(BlockBackend *blk, int align); +/* callers must free the returned pointer with qemu_vfree() */ void *blk_try_blockalign(BlockBackend *blk, size_t size); +/* callers must free the returned pointer with qemu_vfree() */ void *blk_blockalign(BlockBackend *blk, size_t size); bool blk_op_is_blocked(BlockBackend *blk, BlockOpType op, Error **errp); void blk_op_unblock(BlockBackend *blk, BlockOpType op, Error *reason); -- 2.21.3