linux/drivers/md/dm-vdo/indexer/hash-utils.h

/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright 2023 Red Hat
 */

#ifndef UDS_HASH_UTILS_H
#define UDS_HASH_UTILS_H

#include "numeric.h"

#include "geometry.h"
#include "indexer.h"

/* Utilities for extracting portions of a request name for various uses. */

/* How various portions of a record name are apportioned. */
enum {};

static inline u64 uds_extract_chapter_index_bytes(const struct uds_record_name *name)
{}

static inline u64 uds_extract_volume_index_bytes(const struct uds_record_name *name)
{}

static inline u32 uds_extract_sampling_bytes(const struct uds_record_name *name)
{}

/* Compute the chapter delta list for a given name. */
static inline u32 uds_hash_to_chapter_delta_list(const struct uds_record_name *name,
						 const struct index_geometry *geometry)
{}

/* Compute the chapter delta address for a given name. */
static inline u32 uds_hash_to_chapter_delta_address(const struct uds_record_name *name,
						    const struct index_geometry *geometry)
{}

static inline unsigned int uds_name_to_hash_slot(const struct uds_record_name *name,
						 unsigned int slot_count)
{}

#endif /* UDS_HASH_UTILS_H */