Merge "Mark a bunch of things internal"

This commit is contained in:
Zuul
2025-04-30 21:40:34 +00:00
committed by Gerrit Code Review
19 changed files with 66 additions and 66 deletions

View File

@@ -1,18 +1,4 @@
T data_bit_lookup
T does_parity_have_data
T fast_memcpy
T get_failure_pattern
T get_missing_data
T get_missing_parity
T index_of_connected_parity
T init_xor_hd_code
T is_data_in_parity
T missing_elements_bm
T num_missing_data_in_parity
T parity_bit_lookup
T remove_from_missing_list
T selective_encode
T xor_bufs_and_store
T xor_code_encode
T xor_hd_decode
T xor_hd_fragments_needed

View File

@@ -1,49 +1,11 @@
D backend_flat_xor_hd
D backend_isa_l_rs_cauchy
D backend_isa_l_rs_vand
D backend_jerasure_rs_cauchy
D backend_jerasure_rs_vand
D backend_liberasurecode_rs_vand
D backend_libphazr
D backend_null
D backend_shss
T add_fragment_metadata
T alloc_and_set_buffer
T alloc_fragment_buffer
T alloc_zeroed_buffer
T check_and_free_buffer
T compute_alg_sig
T destroy_alg_sig
T finalize_fragments_after_encode
T fragments_to_string
T free_fragment_buffer
T get_aligned_buffer16
T get_aligned_data_size
T get_backend_id
T get_backend_version
T get_data_ptr_array_from_fragments
T get_data_ptr_from_fragment
T get_fragment_backend_metadata_size
T get_fragment_buffer_size
T get_fragment_idx
T get_fragment_partition
T get_fragment_payload_size
T get_fragment_ptr_array_from_data
T get_fragment_ptr_from_data
T get_fragment_ptr_from_data_novalidate
T get_fragment_size
T get_libec_version
T get_orig_data_size
T init_alg_sig
T is_invalid_fragment
T is_invalid_fragment_header
T isa_l_common_init
T isa_l_decode
T isa_l_element_size
T isa_l_encode
T isa_l_exit
T isa_l_min_fragments
T isa_l_reconstruct
T liberasurecode_backend_available
T liberasurecode_backend_instance_get_by_desc
T liberasurecode_crc32_alt
@@ -64,13 +26,3 @@ T liberasurecode_instance_destroy
T liberasurecode_reconstruct_fragment
T liberasurecode_verify_fragment_metadata
T liberasurecode_verify_stripe_metadata
T prepare_fragments_for_decode
T prepare_fragments_for_encode
T set_backend_id
T set_backend_version
T set_checksum
T set_fragment_backend_metadata_size
T set_fragment_idx
T set_fragment_payload_size
T set_libec_version
T set_orig_data_size

View File

@@ -10,8 +10,4 @@ T liberasurecode_rs_vand_encode
T liberasurecode_rs_vand_reconstruct
T make_systematic_matrix
T print_matrix
T rs_galois_deinit_tables
T rs_galois_init_tables
T rs_galois_inverse
T rs_galois_mult
T square_matrix_multiply

View File

@@ -36,6 +36,7 @@
#include "erasurecode_helpers_ext.h"
#include "isa_l_common.h"
__attribute__ ((visibility ("internal")))
int isa_l_encode(void *desc, char **data, char **parity,
int blocksize)
{
@@ -176,6 +177,7 @@ static unsigned char* get_inverse_rows(int k,
return inverse_rows;
}
__attribute__ ((visibility ("internal")))
int isa_l_decode(void *desc, char **data, char **parity,
int *missing_idxs, int blocksize)
{
@@ -280,6 +282,7 @@ out:
return ret;
}
__attribute__ ((visibility ("internal")))
int isa_l_reconstruct(void *desc, char **data, char **parity,
int *missing_idxs, int destination_idx, int blocksize)
{
@@ -392,6 +395,7 @@ out:
return ret;
}
__attribute__ ((visibility ("internal")))
int isa_l_min_fragments(void *desc, int *missing_idxs,
int *fragments_to_exclude, int *fragments_needed)
{
@@ -424,11 +428,13 @@ int isa_l_min_fragments(void *desc, int *missing_idxs,
*
* Returns the size in bits!
*/
__attribute__ ((visibility ("internal")))
int isa_l_element_size(void* desc)
{
return 8;
}
__attribute__ ((visibility ("internal")))
int isa_l_exit(void *desc)
{
isa_l_descriptor *isa_l_desc = NULL;
@@ -443,6 +449,7 @@ int isa_l_exit(void *desc)
}
__attribute__ ((visibility ("internal")))
void * isa_l_common_init(struct ec_backend_args *args, void *backend_sohandle,
const char* gen_matrix_func_name)
{

View File

@@ -73,6 +73,7 @@ static struct ec_backend_op_stubs isa_l_rs_cauchy_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_isa_l_rs_cauchy = {
.id = EC_BACKEND_ISA_L_RS_CAUCHY,
.name = ISA_L_RS_CAUCHY_LIB_NAME,

View File

@@ -72,6 +72,7 @@ static struct ec_backend_op_stubs isa_l_rs_vand_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_isa_l_rs_vand = {
.id = EC_BACKEND_ISA_L_RS_VAND,
.name = ISA_L_RS_VAND_LIB_NAME,

View File

@@ -462,6 +462,7 @@ static struct ec_backend_op_stubs jerasure_rs_cauchy_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_jerasure_rs_cauchy = {
.id = EC_BACKEND_JERASURE_RS_CAUCHY,
.name = JERASURE_RS_CAUCHY_LIB_NAME,

View File

@@ -370,6 +370,7 @@ static struct ec_backend_op_stubs jerasure_rs_vand_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_jerasure_rs_vand = {
.id = EC_BACKEND_JERASURE_RS_VAND,
.name = JERASURE_RS_VAND_LIB_NAME,

View File

@@ -226,6 +226,7 @@ static struct ec_backend_op_stubs null_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_null = {
.id = EC_BACKEND_NULL,
.name = NULL_LIB_NAME,

View File

@@ -377,6 +377,7 @@ static struct ec_backend_op_stubs libphazr_op_stubs = {
.GETENCODEOFFSET = pio_get_encode_offset,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_libphazr = {
.id = EC_BACKEND_LIBPHAZR,
.name = LIBPHAZR_LIB_NAME,

View File

@@ -300,6 +300,7 @@ static struct ec_backend_op_stubs liberasurecode_rs_vand_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_liberasurecode_rs_vand = {
.id = EC_BACKEND_LIBERASURECODE_RS_VAND,
.name = LIBERASURECODE_RS_VAND_LIB_NAME,

View File

@@ -301,6 +301,7 @@ static struct ec_backend_op_stubs shss_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_shss = {
.id = EC_BACKEND_SHSS,
.name = SHSS_LIB_NAME,

View File

@@ -180,6 +180,7 @@ static struct ec_backend_op_stubs flat_xor_hd_op_stubs = {
.GETENCODEOFFSET = get_encode_offset_zero,
};
__attribute__ ((visibility ("internal")))
struct ec_backend_common backend_flat_xor_hd = {
.id = EC_BACKEND_FLAT_XOR_HD,
.name = FLAT_XOR_LIB_NAME,

View File

@@ -46,6 +46,7 @@ static int *ilog_table = NULL;
static int *ilog_table_begin = NULL;
static int init_counter = 0;
__attribute__ ((visibility ("internal")))
void rs_galois_init_tables(void)
{
if (init_counter++ > 0) {
@@ -70,6 +71,7 @@ void rs_galois_init_tables(void)
ilog_table = &ilog_table_begin[GROUP_SIZE];
}
__attribute__ ((visibility ("internal")))
void rs_galois_deinit_tables(void)
{
init_counter--;
@@ -87,6 +89,7 @@ void rs_galois_deinit_tables(void)
}
}
__attribute__ ((visibility ("internal")))
int rs_galois_mult(int x, int y)
{
int sum;
@@ -111,6 +114,7 @@ static int rs_galois_div(int x, int y)
return ilog_table[diff];
}
__attribute__ ((visibility ("internal")))
int rs_galois_inverse(int x)
{
return rs_galois_div(1, x);

View File

@@ -40,26 +40,31 @@ static const int g_bit_lookup[] = {0x1, 0x2, 0x4, 0x8,
0x1000000, 0x2000000, 0x4000000, 0x8000000,
0x10000000, 0x20000000, 0x40000000, 0x80000000};
__attribute__ ((visibility ("internal")))
int is_data_in_parity(int data_idx, unsigned int parity_bm)
{
return ((g_bit_lookup[data_idx] & parity_bm) == g_bit_lookup[data_idx]);
}
__attribute__ ((visibility ("internal")))
int does_parity_have_data(int parity_idx, unsigned int data_bm)
{
return ((g_bit_lookup[parity_idx] & data_bm) == g_bit_lookup[parity_idx]);
}
__attribute__ ((visibility ("internal")))
int parity_bit_lookup(xor_code_t *code_desc, int index)
{
return g_bit_lookup[code_desc->k - index];
}
__attribute__ ((visibility ("internal")))
int data_bit_lookup(xor_code_t *code_desc, int index)
{
return g_bit_lookup[index];
}
__attribute__ ((visibility ("internal")))
int missing_elements_bm(xor_code_t *code_desc, int *missing_elements, int (*bit_lookup_func)(xor_code_t *code_desc, int index))
{
int i = 0;
@@ -73,6 +78,7 @@ int missing_elements_bm(xor_code_t *code_desc, int *missing_elements, int (*bit_
return bm;
}
__attribute__ ((visibility ("internal")))
failure_pattern_t get_failure_pattern(xor_code_t *code_desc, int *missing_idxs)
{
int i = 0;
@@ -127,6 +133,7 @@ failure_pattern_t get_failure_pattern(xor_code_t *code_desc, int *missing_idxs)
return pattern;
}
__attribute__ ((visibility ("internal")))
void fast_memcpy(char *dst, char *src, int size)
{
// Use _mm_stream_si128((__m128i*) _buf2, sum);
@@ -138,6 +145,7 @@ void fast_memcpy(char *dst, char *src, int size)
*
* Store in buf2 (opposite of memcpy convention... Maybe change?)
*/
__attribute__ ((visibility ("internal")))
void xor_bufs_and_store(char *buf1, char *buf2, int blocksize)
{
#ifdef INTEL_SSE2
@@ -190,6 +198,7 @@ void xor_code_encode(xor_code_t *code_desc, char **data, char **parity, int bloc
}
}
__attribute__ ((visibility ("internal")))
void selective_encode(xor_code_t *code_desc, char **data, char **parity, int *missing_parity, int blocksize)
{
int i;
@@ -205,6 +214,7 @@ void selective_encode(xor_code_t *code_desc, char **data, char **parity, int *mi
}
}
__attribute__ ((visibility ("internal")))
int * get_missing_parity(xor_code_t *code_desc, int *missing_idxs)
{
int *missing_parity = (int*)malloc(sizeof(int)*MAX_PARITY);
@@ -222,6 +232,7 @@ int * get_missing_parity(xor_code_t *code_desc, int *missing_idxs)
return missing_parity;
}
__attribute__ ((visibility ("internal")))
int * get_missing_data(xor_code_t *code_desc, int *missing_idxs)
{
int *missing_data = (int*)malloc(sizeof(int)*MAX_DATA);
@@ -306,6 +317,7 @@ void xor_reconstruct_one(xor_code_t *code_desc, char **data, char **parity, int
free(missing_parity);
}
__attribute__ ((visibility ("internal")))
int num_missing_data_in_parity(xor_code_t *code_desc, int parity_idx, int *missing_data)
{
int i = 0;
@@ -325,6 +337,7 @@ int num_missing_data_in_parity(xor_code_t *code_desc, int parity_idx, int *missi
return num_missing_data;
}
__attribute__ ((visibility ("internal")))
int index_of_connected_parity(xor_code_t *code_desc, int data_index, int *missing_parity, int *missing_data)
{
int parity_index = -1;
@@ -360,6 +373,7 @@ int index_of_connected_parity(xor_code_t *code_desc, int data_index, int *missin
return parity_index > -1 ? parity_index + code_desc->k : parity_index;
}
__attribute__ ((visibility ("internal")))
void remove_from_missing_list(int element, int *missing_list)
{
int i = 0;

View File

@@ -58,6 +58,7 @@ static bool is_fragment(char *buf)
* The following methods provide wrappers for allocating and deallocating
* memory.
*/
__attribute__ ((visibility ("internal")))
void *get_aligned_buffer16(int size)
{
void *buf;
@@ -81,6 +82,7 @@ void *get_aligned_buffer16(int size)
* @param size integer size in bytes of buffer to allocate
* @return pointer to start of allocated buffer or NULL on error
*/
__attribute__ ((visibility ("internal")))
void * alloc_zeroed_buffer(int size)
{
return alloc_and_set_buffer(size, 0);
@@ -113,6 +115,7 @@ void * alloc_and_set_buffer(int size, int value) {
*
* @return NULL
*/
__attribute__ ((visibility ("internal")))
void * check_and_free_buffer(void * buf)
{
if (buf)
@@ -120,6 +123,7 @@ void * check_and_free_buffer(void * buf)
return NULL;
}
__attribute__ ((visibility ("internal")))
char *alloc_fragment_buffer(int size)
{
char *buf;
@@ -136,6 +140,7 @@ char *alloc_fragment_buffer(int size)
return buf;
}
__attribute__ ((visibility ("internal")))
int free_fragment_buffer(char *buf)
{
fragment_header_t *header;
@@ -165,6 +170,7 @@ int free_fragment_buffer(char *buf)
*
* @return fragment size on disk
*/
__attribute__ ((visibility ("internal")))
uint64_t get_fragment_size(char *buf)
{
@@ -182,6 +188,7 @@ uint64_t get_fragment_size(char *buf)
* @param data_len - integer length of data in bytes
* @return integer data length aligned with wordsize of EC algorithm
*/
__attribute__ ((visibility ("internal")))
int get_aligned_data_size(ec_backend_t instance, int data_len)
{
int k = instance->args.uargs.k;
@@ -215,6 +222,7 @@ char *get_data_ptr_from_fragment(char *buf)
return buf;
}
__attribute__ ((visibility ("internal")))
int get_data_ptr_array_from_fragments(char **data_array, char **fragments,
int num_fragments)
{
@@ -231,6 +239,7 @@ int get_data_ptr_array_from_fragments(char **data_array, char **fragments,
return num;
}
__attribute__ ((visibility ("internal")))
int get_fragment_ptr_array_from_data(char **frag_array, char **data,
int num_data)
{
@@ -247,6 +256,7 @@ int get_fragment_ptr_array_from_data(char **frag_array, char **data,
return num;
}
__attribute__ ((visibility ("internal")))
char *get_fragment_ptr_from_data_novalidate(char *buf)
{
buf -= sizeof(fragment_header_t);
@@ -254,6 +264,7 @@ char *get_fragment_ptr_from_data_novalidate(char *buf)
return buf;
}
__attribute__ ((visibility ("internal")))
char *get_fragment_ptr_from_data(char *buf)
{
fragment_header_t *header;
@@ -272,6 +283,7 @@ char *get_fragment_ptr_from_data(char *buf)
/* ==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~== */
__attribute__ ((visibility ("internal")))
int set_fragment_idx(char *buf, int idx)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -287,6 +299,7 @@ int set_fragment_idx(char *buf, int idx)
return 0;
}
__attribute__ ((visibility ("internal")))
int get_fragment_idx(char *buf)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -300,6 +313,7 @@ int get_fragment_idx(char *buf)
return header->meta.idx;
}
__attribute__ ((visibility ("internal")))
int set_fragment_payload_size(char *buf, int size)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -315,6 +329,7 @@ int set_fragment_payload_size(char *buf, int size)
return 0;
}
__attribute__ ((visibility ("internal")))
int get_fragment_payload_size(char *buf)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -328,6 +343,7 @@ int get_fragment_payload_size(char *buf)
return header->meta.size;
}
__attribute__ ((visibility ("internal")))
int set_fragment_backend_metadata_size(char *buf, int size)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -343,6 +359,7 @@ int set_fragment_backend_metadata_size(char *buf, int size)
return 0;
}
__attribute__ ((visibility ("internal")))
int get_fragment_backend_metadata_size(char *buf)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -356,6 +373,7 @@ int get_fragment_backend_metadata_size(char *buf)
return header->meta.frag_backend_metadata_size;
}
__attribute__ ((visibility ("internal")))
int get_fragment_buffer_size(char *buf)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -369,6 +387,7 @@ int get_fragment_buffer_size(char *buf)
return header->meta.size + header->meta.frag_backend_metadata_size;
}
__attribute__ ((visibility ("internal")))
int set_orig_data_size(char *buf, int orig_data_size)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -384,6 +403,7 @@ int set_orig_data_size(char *buf, int orig_data_size)
return 0;
}
__attribute__ ((visibility ("internal")))
int get_orig_data_size(char *buf)
{
fragment_header_t *header = (fragment_header_t *) buf;
@@ -397,6 +417,7 @@ int get_orig_data_size(char *buf)
return header->meta.orig_data_size;
}
__attribute__ ((visibility ("internal")))
int set_libec_version(char *buf)
{
if (!is_fragment(buf)) {
@@ -417,6 +438,7 @@ int get_libec_version(char *buf, uint32_t *ver)
return 0;
}
__attribute__ ((visibility ("internal")))
int set_backend_id(char *buf, ec_backend_id_t id)
{
if (!is_fragment(buf)) {
@@ -437,6 +459,7 @@ int get_backend_id(char *buf, ec_backend_id_t *id)
return 0;
}
__attribute__ ((visibility ("internal")))
int set_backend_version(char *buf, uint32_t version)
{
if (!is_fragment(buf)) {
@@ -459,6 +482,7 @@ int get_backend_version(char *buf, uint32_t *version)
/* ==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~==~=*=~== */
__attribute__ ((visibility ("internal")))
inline int set_checksum(ec_checksum_type_t ct, char *buf, int blocksize)
{
fragment_header_t* header = (fragment_header_t*) buf;

View File

@@ -34,6 +34,7 @@
#include "erasurecode_stdinc.h"
#include "alg_sig.h"
__attribute__ ((visibility ("internal")))
void add_fragment_metadata(ec_backend_t be, char *fragment,
int idx, uint64_t orig_data_size, int blocksize,
ec_checksum_type_t ct, int add_chksum)
@@ -70,6 +71,7 @@ void add_fragment_metadata(ec_backend_t be, char *fragment,
}
}
__attribute__ ((visibility ("internal")))
int finalize_fragments_after_encode(ec_backend_t instance,
int k, int m, int blocksize, uint64_t orig_data_size,
char **encoded_data, char **encoded_parity)

View File

@@ -33,6 +33,7 @@
#include "erasurecode_preprocessing.h"
#include "erasurecode_stdinc.h"
__attribute__ ((visibility ("internal")))
int prepare_fragments_for_encode(ec_backend_t instance,
int k, int m,
const char *orig_data, uint64_t orig_data_size, /* input */
@@ -117,6 +118,7 @@ out_error:
* case, the caller has to free up in the success case, so it may as well do
* so in the failure case.
*/
__attribute__ ((visibility ("internal")))
int prepare_fragments_for_decode(
int k, int m,
char **data, char **parity,
@@ -277,6 +279,7 @@ int get_fragment_partition(
return (num_missing > m) ? -EINSUFFFRAGS : 0;
}
__attribute__ ((visibility ("internal")))
int fragments_to_string(int k, int m,
char **fragments, int num_fragments,
char **orig_payload, uint64_t *payload_len)

View File

@@ -213,6 +213,7 @@ alg_sig_t *init_alg_sig_w16(void *jerasure_sohandle, int sig_len)
return alg_sig_handle;
}
__attribute__ ((visibility ("internal")))
alg_sig_t *init_alg_sig(int sig_len, int gf_w)
{
int i=0;
@@ -243,6 +244,7 @@ alg_sig_t *init_alg_sig(int sig_len, int gf_w)
return NULL;
}
__attribute__ ((visibility ("internal")))
void destroy_alg_sig(alg_sig_t* alg_sig_handle)
{
if (alg_sig_handle == NULL) {
@@ -422,6 +424,7 @@ int compute_alg_sig_64(alg_sig_t *alg_sig_handle, char *buf, int len, char *sig)
return -1;
}
__attribute__ ((visibility ("internal")))
int compute_alg_sig(alg_sig_t *alg_sig_handle, char *buf, int len, char *sig)
{
if (alg_sig_handle->sig_len == 32) {