Kevin Greenan
543d7e9923
Plugging-in the ISA-L backend... Still needs more documentation and a little clean-up, but the tests are passing...
2014-09-29 14:01:56 -07:00
Eric Lambert
be8dcbcc27
Char * backend names are no longer supported. They have been replaced with elements of the ec_backend_id_t enum.
2014-09-29 13:24:50 -07:00
Eric Lambert
3a108f751c
liberasurecode_backend_lookup_id now returns EC_BACKENDS_MAX, as
...
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.
2014-09-26 19:13:37 -07:00
Eric Lambert
06bb20ca1c
crc32 checksum now supported (prior to this commit checksum values were
...
not being placed into the fragment header).
2014-09-25 13:23:06 -07:00
Eric Lambert
512353f8be
Compile in pedantic mode and fail compilation on warnings. Also cleanup all existing warnings.
2014-09-10 17:13:45 -07:00
Eric Lambert
6bbcfde657
added argument validation logic and tests for
...
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.
2014-09-02 15:07:07 -07:00
Eric Lambert
fb8b798f18
Merge branch 'newapi' of https://bitbucket.org/tsg-/liberasurecode into newapi
2014-09-02 11:15:03 -07:00
Eric Lambert
81c47389ba
Added more tests (most of which test that the "public" functions
...
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).
2014-09-02 11:12:16 -07:00
Tushar Gohad
d03557c151
Add doxygen config. Update README, copyrights.
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-09-01 22:40:09 -07:00
Kevin Greenan
c9af505400
Backend changes needed to honor "excluded fragments".
2014-08-21 13:05:59 -07:00
Tushar Gohad
29d7bda5f5
Make style consistent (formatting, variable defs)
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-08-20 17:32:31 -07:00
Kevin Greenan
d251ed8f98
API change for liberasurecode_fragments_needed
...
Still needed:
1.) RS and XOR backends need to honor the 'exclude' argument.
2.) Need to add tests.
2014-08-20 09:15:36 -07:00
Mark Storer
8af4f83e86
- Cleaned up the documentation in erasurecode.h to ensure that it
...
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.
2014-08-18 10:44:19 -07:00
Kevin Greenan
3338e25b9f
Merged in lock_checks (pull request #2 )
...
Updated the backend instance register/unregister methods with lock
2014-08-16 17:10:26 -07:00
Mark Storer
9c6ba636ec
Updated the backend instance register/unregister methods with lock
...
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.
2014-08-16 14:53:12 -07:00
Mark Storer
4cfd3f535b
Updated liberasurecode_supported_checksum_types to accept a pointer
...
argument that holds the length of the list returned (i.e. the number of
supported checksum types).
2014-08-15 16:50:14 -07:00
Kevin Greenan
c22312f2d0
Added cleanup API
2014-08-13 21:41:38 -07:00
Tushar Gohad
5e2108722c
Split metadata handling into own routine, add crc32 support
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-08-07 14:19:43 -07:00
Kevin Greenan
109e09fa9c
Fixed reconstruction.
2014-08-05 14:33:39 -07:00
Eric Lambert
cc765ef92a
Fixed bug where when decoding with a missing data fragment, fragment header
...
reconstruction could occurr against the wrong fragment.
2014-08-01 10:58:23 -07:00
Eric Lambert
b62a45a854
Merge branch 'newapi' of https://bitbucket.org/tsg-/liberasurecode into newapi
2014-07-31 16:15:34 -07:00
Eric Lambert
009aa4e80b
In the erasurecode_preprocessing.c routines for decode/reconstruct, clearly
...
distinguish between the fragment and the data/parity buffers, ie
maintain data, parity pointer arrays separate from the fragment
pointers.
2014-07-31 16:02:28 -07:00
Kevin Greenan
1bb14c6a3a
Stubbing the metadata functions and updating their interfaces.
2014-07-30 23:06:30 -07:00
Eric Lambert
d6613f4e90
Merge branch 'newapi' of https://bitbucket.org/tsg-/liberasurecode into newapi
2014-07-29 15:53:22 -07:00
Eric Lambert
7fe555b068
Buffers that hold missing indexes need to be '-1 terminated'
2014-07-29 15:51:57 -07:00
Tushar Gohad
6671c45b03
Add liberasurecode_supported_backends API implementation
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-25 22:18:37 -07:00
Kevin Greenan
aab24dcc0b
Implemented fragments needed for jerasure backends
2014-07-23 13:24:34 -07:00
Kevin Greenan
5c54419755
Plugged-in Cauchy RS.
2014-07-23 12:47:52 -07:00
Tushar Gohad
7cc67fee9c
Minor API doc fixup (backend names)
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-22 22:20:07 -07:00
Tushar Gohad
779ff74024
null_code: First cut
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-22 22:07:17 -07:00
Tushar Gohad
9069a7a33a
Fix data_size type, int -> uint64_t
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-22 20:45:24 -07:00
Kevin Greenan
59bec942cb
Ripping out galois.[ch] and dynamically pulling the multiplication functon from jerasure
2014-07-22 13:37:39 -07:00
Kevin Greenan
bde7428542
Fix simple encode_decode unit test and remove debugging prints.
2014-07-22 12:33:06 -07:00
Tushar Gohad
8a07d41e85
Add encode postprocessing, checksum helpers
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-21 01:19:36 -07:00
Tushar Gohad
af4279dfb2
Update encode API so liberasurecode allocates all memory
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-21 01:14:56 -07:00
Kevin Greenan
bf219bde4f
Added functionality needed to support the get_segment_info() API in PyECLib.
2014-07-21 09:10:33 -07:00
Tushar Gohad
19cd7d3b49
Make int types consistent across API
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-18 09:37:40 -07:00
Tushar Gohad
e04deed832
Allow varargs in log messages, use log_error in more places
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-18 06:14:40 -07:00
Tushar Gohad
3e76c39d08
Add liberasurecode constructor/destructor
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-18 04:42:55 -07:00
Tushar Gohad
5383c54099
flat_xor_hd: Handle backend init errors
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-18 01:15:29 -07:00
Tushar Gohad
2b3c79ac4e
Move data/parity return buffer allocs back to main
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-18 00:29:44 -07:00
Kevin Greenan
cea826511d
Oops... Comment termination fail!
2014-07-19 16:49:26 -07:00
Kevin Greenan
3eeb4c82b8
Wiring in the reconstruct preprocessing!
2014-07-19 16:39:25 -07:00
Tushar Gohad
f033e1c742
Move encode() helpers to common preprocessing code
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-17 19:55:52 -07:00
Kevin Greenan
0422ac5233
Wire-in the decoding preprocessing...
...
This compiles, but has not been tested!
2014-07-19 11:01:00 -07:00
Tushar Gohad
812c872111
Make NULL conditionals consistent (NULL == x)
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-17 18:14:44 -07:00
Tushar Gohad
d3a8444e93
Add preprocessing code for main encode() routine
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-17 16:03:15 -07:00
Tushar Gohad
e92d3de70d
Add helper prototypes to erasurecode_helpers.h
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-17 15:35:45 -07:00
Tushar Gohad
dee9ece2f7
Add get_aligned_data_size() to ec helpers
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-17 15:29:33 -07:00
Tushar Gohad
ec771d6a13
jerasure_rs_vand: Add EC args validation
...
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com >
2014-07-17 13:06:33 -07:00