summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Small fix to check the return code when malloc'ing temporary buffers.Mark Storer2014-10-011-0/+8
|
* Add the ability for backends to specifyTushar Gohad2014-09-306-0/+8
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Plugging-in the ISA-L backend... Still needs more documentation and a ↵Kevin Greenan2014-09-294-2/+596
| | | | little clean-up, but the tests are passing...
* Char * backend names are no longer supported. They have been replaced with ↵Eric Lambert2014-09-291-74/+5
| | | | elements of the ec_backend_id_t enum.
* liberasurecode_backend_lookup_id now returns EC_BACKENDS_MAX, asnewapiEric Lambert2014-09-261-3/+3
| | | | | | | opposed to -1, when it can not locate the specified backend (-1 was a non-sensical return value since the function signature called for a type of ec_backend_id_t). NOTE: with this change we now successfully build and tests pass on OS X with clang.
* crc32 checksum now supported (prior to this commit checksum values wereEric Lambert2014-09-253-6/+10
| | | | not being placed into the fragment header).
* A little bit of code clean up based on feedback/reviewsEric Lambert2014-09-151-8/+10
|
* Compile in pedantic mode and fail compilation on warnings. Also cleanup all ↵Eric Lambert2014-09-1010-103/+200
| | | | existing warnings.
* added argument validation logic and tests forEric Lambert2014-09-021-4/+8
| | | | | | | | liberasure_get_fragment_metadata and liberasurecode_verify_stripe_metadata. In the process removed the liberasure descriptor from the liberasure_get_fragment_metadata function's signature as it was not being used in the function's implementation.
* Merge branch 'newapi' of https://bitbucket.org/tsg-/liberasurecode into newapiEric Lambert2014-09-028-8/+8
|\
| * Add doxygen config. Update README, copyrights.Tushar Gohad2014-09-018-8/+8
| | | | | | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* | Added more tests (most of which test that the "public" functionsEric Lambert2014-09-021-9/+95
|/ | | | | | perform some argument validity checks). Also fixed some bugs exposed by these new tests. NOTE: liberasurecode_test now *requires* that the null provider be loadable by the test (meaning is on LD_LIBRARY_PATH).
* Fixed bug where null_init was not correctly setting w param (was relying on ↵Eric Lambert2014-08-261-0/+2
| | | | un-initialized memory which resulted in non-deterministic behavior).
* Cleaned up the Cauchy backend. This has a bit more cleaned than theMark Storer2014-08-251-44/+67
| | | | | | | | | other backends because Jerasure allocs more memory under the hood that we need to check on init, and cleanup on exit. Minor cleanup wise we do fewer memory derefs by saving the value of k, m and w in a few places. This is, however, probably most effective at just improving readability a bit.
* Minor cleanup to null backend. Mostly to the exit cases. Free checks forMark W. Storer2014-08-232-44/+32
| | | | | | | | null, so as long we intialize the pointers to NULL, we can be a little terser (and cleaner?) in the exits. Cleanup in the Jerasure Vandermonde backend. Primary change here was to free the memory allocated by Jerasure in the erasures_to_erased method.
* Backend changes needed to honor "excluded fragments".Kevin Greenan2014-08-216-128/+206
|
* Make style consistent (formatting, variable defs)Tushar Gohad2014-08-201-12/+20
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* API change for liberasurecode_fragments_neededKevin Greenan2014-08-201-4/+11
| | | | | | | Still needed: 1.) RS and XOR backends need to honor the 'exclude' argument. 2.) Need to add tests.
* - Cleaned up the documentation in erasurecode.h to ensure that itMark Storer2014-08-181-8/+10
| | | | | | | | | follows a common format and that it accurately reflects the code. - Cleaned up liberasurecode_instance_destroy to ensure that the return code is correct and that it is not trying to free data that has not been removed from the open instances. - Updated the tests to assert that the liberasurecode_instance_destroy method is return correctly.
* Merged in lock_checks (pull request #2) Kevin Greenan2014-08-161-12/+28
|\ | | | | Updated the backend instance register/unregister methods with lock
| * Updated the backend instance register/unregister methods with lockMark Storer2014-08-161-12/+28
| | | | | | | | | | | | status checking. This shouldn't be an issue, but technically, lock requests can fail and so should check the return calls out of good practice.
* | Updated liberasurecode_supported_checksum_types to accept a pointerMark Storer2014-08-151-2/+3
|/ | | | | argument that holds the length of the list returned (i.e. the number of supported checksum types).
* Added cleanup APIKevin Greenan2014-08-131-5/+72
|
* Split metadata handling into own routine, add crc32 supportTushar Gohad2014-08-074-76/+148
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Merge branch 'newapi' of https://bitbucket.org/tsg-/liberasurecode into newapiEric Lambert2014-08-082-0/+2
|\
| * Minor bug in getting the required fragments for jerasureKevin Greenan2014-08-082-0/+2
| |
* | Added ability to generate coverage data with configure --enable-gcov.Eric Lambert2014-08-083-6/+14
|/ | | | | Currently only works on Linux (build/tests will run on OS X but coverage data is not generated).
* Adding reconstruction for XOR codes.Kevin Greenan2014-08-051-1/+4
|
* Fixed reconstruction.Kevin Greenan2014-08-054-26/+37
|
* Add HD parameter to generic params.Kevin Greenan2014-08-051-1/+1
|
* Fixed bug where when decoding with a missing data fragment, fragment headerEric Lambert2014-08-011-1/+1
| | | | reconstruction could occurr against the wrong fragment.
* Merge branch 'newapi' of https://bitbucket.org/tsg-/liberasurecode into newapiEric Lambert2014-07-311-0/+23
|\
| * Stubbing the metadata functions and updating their interfaces.Kevin Greenan2014-07-301-0/+23
| |
* | In the erasurecode_preprocessing.c routines for decode/reconstruct, clearlyEric Lambert2014-07-312-49/+34
| | | | | | | | | | | | distinguish between the fragment and the data/parity buffers, ie maintain data, parity pointer arrays separate from the fragment pointers.
* | Created helper function to iterate over a set of data/parity fragmentsEric Lambert2014-07-291-2/+18
|/ | | | | and create an array of pointers to the data segments for each fragment (this array can then be passed to backend decode functions).
* Merge branch 'newapi' of https://bitbucket.org/tsg-/liberasurecode into newapiEric Lambert2014-07-291-17/+45
|\
| * Add liberasurecode_supported_backends API implementationTushar Gohad2014-07-251-17/+45
| | | | | | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* | Buffers that hold missing indexes need to be '-1 terminated'Eric Lambert2014-07-292-2/+14
|/
* Parity Fragment Headers now contain original data length (without themEric Lambert2014-07-241-0/+1
| | | | | | the fragements_to_string function called by decode bails because of size mismatch). Also update simple encode/decode test to pass all fragments to decode.
* Implemented fragments needed for jerasure backendsKevin Greenan2014-07-233-6/+43
|
* Oops... Yet another build fix.Kevin Greenan2014-07-231-2/+2
|
* Plugged-in Cauchy RS.Kevin Greenan2014-07-233-2/+306
|
* Minor API doc fixup (backend names)Tushar Gohad2014-07-221-0/+1
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* null_code: First cutTushar Gohad2014-07-226-2/+302
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Add asserts to make sure buffer passed to helpers was not nullTushar Gohad2014-07-221-0/+9
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Fix data_size type, int -> uint64_tTushar Gohad2014-07-221-8/+10
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Mac OS X support in xor and jerasure backendsTushar Gohad2014-07-222-0/+8
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* flat_xor_hd: Fix xor_desc pointer (encode/decodes tests pass now)Tushar Gohad2014-07-221-5/+18
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* algsig: Move jerasure backend dlopen up a levelTushar Gohad2014-07-221-15/+16
| | | | | | .. also check for errors Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Ripping out galois.[ch] and dynamically pulling the multiplication functon ↵Kevin Greenan2014-07-224-1153/+60
| | | | from jerasure