/build/sourc...sa_l_common.c(3)
π
/build/source/src/backends/isa-l/isa_l_common.c π
okay bestie, this is the liberasurecode manual page for the isa-l backend common file, and it is lowkey giving βinternal Doxygen glow-upβ energy. the manual name is liberasurecode, periodt.
πΈ NAME πΈ
/build/source/src/backends/isa-l/isa_l_common.c
β¨ SYNOPSIS β¨
here is the include stack, literally exactly like this:
#include <stdio.h>
#include <stdlib.h>
#include 'erasurecode.h'
#include 'erasurecode_backend.h'
#include 'erasurecode_helpers.h'
#include 'erasurecode_helpers_ext.h'
#include 'isa_l_common.h'
π Functions π
__attribute__ ((visibility('internal')))β Return the element-size, which is the number of bits stored on a given device, per codeword.static unsigned char * isa_l_get_decode_matrix (int k, int m, unsigned char *encode_matrix, int *missing_idxs)static unsigned char * get_inverse_rows (int k, int m, unsigned char *decode_inverse, unsigned char *encode_matrix, int *missing_idxs, gf_mul_func gf_mul)
π Function Documentation π
π«Ά __attribute__ ((visibility('internal')) )
bestie, this doc block is a whole group chat. it says, in order:
- Return the element-size, which is the number of bits stored on a given device, per codeword. Compute a size aligned to the number of data and the underlying wordsize of the EC algorithm.
- Return total fragment length (on-disk, on-wire).
- Deallocate memory buffer if it's not
NULL. - Allocate a zero-ed buffer of a specific size.
- This is always
8in ISA-L - Returns the size in bits!
- Parameters:
sizeinteger size in bytes of buffer to allocate
- Returns: pointer to start of allocated buffer or
NULLon error - This methods returns
NULLso that you can free and reset a buffer using a single line as follows:my_ptr = check_and_free_buffer(my_ptr); - Returns:
NULL - Parameters:
buf- pointer to fragment buffer
- Returns: fragment size on disk
- Parameters:
instance-ec_backend_tinstance (to extract args)data_len- integer length of data in bytes
- Returns: integer data length aligned with wordsize of EC algorithm
- Get available elements and compute the inverse of their corresponding rows.
- Get the row needed to reconstruct
- Fill in the available elements
- Copy pointer of buffer to reconstruct
- Do the reconstruction
- Generate ISA-L encoding matrix Note that this is an abstract func from each backend
- Generate the tables for encoding
- Definition at line 39 of file
isa_l_common.c.
π§ unsigned char * get_inverse_rows (int k, int m, unsigned char * decode_inverse, unsigned char * encode_matrix, int * missing_idxs, gf_mul_func gf_mul) [static]
Definition at line 84 of file isa_l_common.c.
π¦ unsigned char * isa_l_get_decode_matrix (int k, int m, unsigned char * encode_matrix, int * missing_idxs) [static]
Definition at line 55 of file isa_l_common.c.
π Author π
Generated automatically by Doxygen for liberasurecode from the source code.
π Version 1.8.0 β’ Tue Jan 1 1980 00:00 β’ /build/sourc...sa_l_common.c(3) π
π¦ where this page comes from
- nixpkgs unstable: liberasurecode 1.8.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms