/* SPDX-License-Identifier: BSD-3-Clause * Copyright (C) 2016 Intel Corporation. * All rights reserved. * Copyright (c) 2021 NVIDIA CORPORATION & AFFILIATES. All rights reserved. */ #ifndef SPDK_BDEV_MALLOC_H #define SPDK_BDEV_MALLOC_H #include "spdk/stdinc.h" #include "spdk/bdev_module.h" typedef void (*spdk_delete_malloc_complete)(void *cb_arg, int bdeverrno); struct malloc_bdev_opts { char *name; struct spdk_uuid uuid; uint64_t num_blocks; uint32_t block_size; uint32_t physical_block_size; uint32_t optimal_io_boundary; uint32_t md_size; bool md_interleave; enum spdk_dif_type dif_type; bool dif_is_head_of_md; }; int create_malloc_disk(struct spdk_bdev **bdev, const struct malloc_bdev_opts *opts); void delete_malloc_disk(const char *name, spdk_delete_malloc_complete cb_fn, void *cb_arg); #endif /* SPDK_BDEV_MALLOC_H */