#include "index-session.h"
#include <linux/atomic.h>
#include "logger.h"
#include "memory-alloc.h"
#include "time-utils.h"
#include "funnel-requestqueue.h"
#include "index.h"
#include "index-layout.h"
enum index_session_flag_bit { … };
enum index_session_flag { … };
static void release_index_session(struct uds_index_session *index_session)
{ … }
static int get_index_session(struct uds_index_session *index_session)
{ … }
int uds_launch_request(struct uds_request *request)
{ … }
static void enter_callback_stage(struct uds_request *request)
{ … }
static inline void count_once(u64 *count_ptr)
{ … }
static void update_session_stats(struct uds_request *request)
{ … }
static void handle_callbacks(struct uds_request *request)
{ … }
static int __must_check make_empty_index_session(struct uds_index_session **index_session_ptr)
{ … }
int uds_create_index_session(struct uds_index_session **session)
{ … }
static int __must_check start_loading_index_session(struct uds_index_session *index_session)
{ … }
static void finish_loading_index_session(struct uds_index_session *index_session,
int result)
{ … }
static int initialize_index_session(struct uds_index_session *index_session,
enum uds_open_index_type open_type)
{ … }
static const char *get_open_type_string(enum uds_open_index_type open_type)
{ … }
int uds_open_index(enum uds_open_index_type open_type,
const struct uds_parameters *parameters,
struct uds_index_session *session)
{ … }
static void wait_for_no_requests_in_progress(struct uds_index_session *index_session)
{ … }
static int __must_check save_index(struct uds_index_session *index_session)
{ … }
static void suspend_rebuild(struct uds_index_session *session)
{ … }
int uds_suspend_index_session(struct uds_index_session *session, bool save)
{ … }
static int replace_device(struct uds_index_session *session, struct block_device *bdev)
{ … }
int uds_resume_index_session(struct uds_index_session *session,
struct block_device *bdev)
{ … }
static int save_and_free_index(struct uds_index_session *index_session)
{ … }
int uds_close_index(struct uds_index_session *index_session)
{ … }
int uds_destroy_index_session(struct uds_index_session *index_session)
{ … }
int uds_flush_index_session(struct uds_index_session *index_session)
{ … }
static void collect_stats(const struct uds_index_session *index_session,
struct uds_index_stats *stats)
{ … }
int uds_get_index_session_stats(struct uds_index_session *index_session,
struct uds_index_stats *stats)
{ … }
void uds_wait_cond(struct cond_var *cv, struct mutex *mutex)
{ … }