ocf/src/metadata/metadata_raw_volatile.h
Robert Baldyga d862778e2b Remove legacy io completion API
Signed-off-by: Robert Baldyga <robert.baldyga@intel.com>
2018-12-12 11:20:41 +01:00

53 lines
1.4 KiB
C

/*
* Copyright(c) 2012-2018 Intel Corporation
* SPDX-License-Identifier: BSD-3-Clause-Clear
*/
#ifndef __METADATA_RAW_VOLATILE_H__
#define __METADATA_RAW_VOLATILE_H__
/*
* RAW volatile Implementation - Size on SSD
*/
uint32_t raw_volatile_size_on_ssd(struct ocf_cache *cache,
struct ocf_metadata_raw *raw);
/*
* RAW volatile Implementation - Checksum
*/
uint32_t raw_volatile_checksum(struct ocf_cache *cache,
struct ocf_metadata_raw *raw);
/*
* RAW volatile Implementation - Flush specified element to SSD
*/
int raw_volatile_flush(struct ocf_cache *cache,
struct ocf_metadata_raw *raw, ocf_cache_line_t line);
/*
* RAW volatile Implementation - Load all metadata elements from SSD
*/
int raw_volatile_load_all(struct ocf_cache *cache,
struct ocf_metadata_raw *raw);
/*
* RAW volatile Implementation - Flush all elements
*/
int raw_volatile_flush_all(struct ocf_cache *cache,
struct ocf_metadata_raw *raw);
/*
* RAM RAW volatile Implementation - Mark to Flush
*/
void raw_volatile_flush_mark(struct ocf_cache *cache, struct ocf_request *rq,
uint32_t map_idx, int to_state, uint8_t start, uint8_t stop);
/*
* RAM RAW volatile Implementation - Do Flush asynchronously
*/
int raw_volatile_flush_do_asynch(struct ocf_cache *cache,
struct ocf_request *rq, struct ocf_metadata_raw *raw,
ocf_req_end_t complete);
#endif /* __METADATA_RAW_VOLATILE_H__ */