This implementation of xNVMe BDEV module supports the char-device / ioctl-over-uring, along with the "regular" io_uring, libaio, POSIX aio, emulated aio (via threadpools) etc. Code changes done : a. Addition of xNVMe submodule to SPDK b. Modification of RPC scripts to Create / Delete xNVMe BDEVs c. Implementation of xNVMe BDEV module Signed-off-by: Krishna Kanth Reddy <krish.reddy@samsung.com> Change-Id: If814ca1c784124df429d283015a6570068b44f87 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11161 Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
24 lines
595 B
C
24 lines
595 B
C
/* SPDX-License-Identifier: BSD-3-Clause
|
|
* Copyright (c) Samsung Electronics Co., Ltd.
|
|
* All rights reserved.
|
|
*/
|
|
|
|
#ifndef SPDK_BDEV_XNVME_H
|
|
#define SPDK_BDEV_XNVME_H
|
|
|
|
#include "spdk/stdinc.h"
|
|
|
|
#include "spdk/queue.h"
|
|
#include "spdk/bdev.h"
|
|
|
|
#include "spdk/bdev_module.h"
|
|
|
|
typedef void (*spdk_delete_xnvme_complete)(void *cb_arg, int bdeverrno);
|
|
|
|
struct spdk_bdev *create_xnvme_bdev(const char *name, const char *filename,
|
|
const char *io_mechanism);
|
|
|
|
void delete_xnvme_bdev(struct spdk_bdev *bdev, spdk_delete_xnvme_complete cb_fn, void *cb_arg);
|
|
|
|
#endif /* SPDK_BDEV_XNVME_H */
|