2 * Copyright(c) 2012-2018 Intel Corporation
3 * SPDX-License-Identifier: BSD-3-Clause-Clear
6 #ifndef __OCF_IO_PRIV_H__
7 #define __OCF_IO_PRIV_H__
10 #include "utils/utils_io_allocator.h"
14 const struct ocf_io_ops
*ops
;
16 struct ocf_request
*req
;
20 struct ocf_io_internal
{
21 struct ocf_io_meta meta
;
25 int ocf_io_allocator_init(ocf_io_allocator_t allocator
, ocf_io_allocator_type_t type
,
26 uint32_t priv_size
, const char *name
);
29 struct ocf_io
*ocf_io_new(ocf_volume_t volume
, ocf_queue_t queue
,
30 uint64_t addr
, uint32_t bytes
, uint32_t dir
,
31 uint32_t io_class
, uint64_t flags
);
33 static inline void ocf_io_start(struct ocf_io
*io
)
36 * We want to call start() callback only once, so after calling
37 * we set it to NULL to prevent multiple calls.
45 static inline void ocf_io_end(struct ocf_io
*io
, int error
)
52 #endif /* __OCF_IO_PRIV_H__ */