summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix segmentation_fault on shss with no priv_argsmetadata_adder_new_patches2Kota Tsuyuzaki2015-02-271-1/+6
|
* Fix isa-l backend to use correct word sizeKota Tsuyuzaki2015-02-271-1/+3
|
* Add contributors into AUTHORS fileKota Tsuyuzaki2015-02-271-0/+6
|
* Add liberasurecode_get_fragment_size functionKota Tsuyuzaki2015-02-272-0/+22
| | | | | | | | | | | | | | | For get_segment_info function of PyECLib, liberasurecode should support get_fragment_size function because if pyeclib and liberasurecode have the calculation of fragment size each other, it might cause the size mismatch (i.e. it'll be a bug) in the future development work. This patch introduces liberasurecode_get_fragment_size function to return the fragment_size calculated at liberasurecode accoring to specified backend descriptor. It really usefull to help caller knows how large size it have to expect and all pyeclib has to do for retrieving fragment_size will be just calling the liberasurecode_get_fragment_size function on get_segment_info.
* Fix small thingsKota Tsuyuzaki2015-02-272-14/+11
| | | | | | | | Small fixes as follows: - Add is_compatible_with function into shss backend - Remove encoded data check against to shss at liberasurecode_test.c - Decrease metadata_adder size on shss backend to be correct fixed value
* Enable to get fragment_len includes metadata_adderKota Tsuyuzaki2015-02-278-34/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch allows to get correct fragment size includes metadata_adder. Current implementaion automatically allocates extra bytes for the metadata_adder in alloc_buffer, and then, no information about the extra bytes will be returned to the api caller side. It's too confusable because callers couldn't know how size they assumes as the fragment size. To be easy to find out the size infomation, this patch adds "frag_adder_size" variable into fragment metadata and also some functions to get fragment size. The definitions of these size infomation are here, fragment_meta: - size-> raw data size used to encode/fragment_to_string - frag_adder_size-> metadata_adder of backend specification And the definitions of functions are here, - get_fragment_size: -> return sizeof(fragument_header) + size + frag_adder_size - get_fragment_buffer_size: -> return size + frag_adder_size - get_fragment_payload_size: -> return size By using these function above, users could get the size information directly from fragments. It results in enabling to return fragment_len to the caller side easily.
* Change metdata_adder type from int into size_tKota Tsuyuzaki2015-02-271-1/+1
|
* Move backend metadata adding to fragment allocationKota Tsuyuzaki2015-02-275-14/+22
| | | | | | | | | | | | | | On the first consideration[1], metadata_adder is defined as a extra byte size for "each" fragment. However, current implementation is an element affects to data_len. (i.e. aligned_data_size for original segment data) We should make metadata_adder to be a fixed value against to each fragment, otherwise the extra bytes for the fragments will have flexible length depends on "K". It will be quite complex for backend implementation to know "How large bytes the raw data size is", "How large bytes the backend could use as extra bytes for each fragment". 1: https://bitbucket.org/tsg-/liberasurecode/commits/032b57d9b1c7aadc547fccbacf88af786c9067e7?at=master
* Ensure fragment pointers passed to cleanupKota Tsuyuzaki2015-02-274-1/+43
| | | | | | | | | | | | | | | | | | | | | | | This patch achieves a couple of things as follows: - Undoing the liberasurecode_encode_cleanup specification to expect "fragment" pointers as its arguments. - Ensuring liberasurecode_encode to pass "fratment" pointers to liberasurecode_encode_cleanup. liberasurecode_encode_cleanup is used also in pyeclib so that it is expected that the argument pointers (i.e. encoded_data and encoded_parity) should be the collection of the heads of "fragment" pointers. However, when the backend encode fails, liberasurecode keeps "data" pointers behind of fragment_header, and then, goes to "out:" statement to cleanup its memories. It causes invalid pointer failure. This patch adds a translation function from "data" pointers to "fragment" pointers and ensure liberasurecode_encode to pass correct pointers to libersurecode_encode_cleanup.
* Fix get_fragment_partition return valueKota Tsuyuzaki2015-02-272-2/+63
| | | | | | | | When num_missing is over than the num of parities (i.e. > m), get_fragment_partition should return -1 as an error code. This patch fixes it and adds a test called "test_get_fragment_partition" into liberasurecode_test.c.
* Fix shss to instantiate backend discriptorKota Tsuyuzaki2015-02-261-14/+24
|
* README.md edited online with Bitbucketv1.0-rc1Tushar Gohad2015-02-251-444/+444
|
* v1.0-rc1Tushar Gohad2015-02-252-2/+2
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Update README with 'shss' backenTushar Gohad2015-02-251-5/+11
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Convert README.md from dos to unix formatTushar Gohad2015-02-251-421/+421
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Fix isa_l backend source filename (botched during 'shss' backend merge)Tushar Gohad2015-02-251-1/+1
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Update references to external projectsTushar Gohad2015-02-251-1/+15
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Update isa-l backend to v2.13Tushar Gohad2015-02-252-46/+49
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Merged ntt_backend into masterTushar Gohad2015-02-255-55/+431
|\
| * Add NTT backend called "shss"ntt_backendKota Tsuyuzaki2015-02-105-55/+431
|/ | | | | | | | | | | | | | This introduces a new plug-able backend called "shss" made by Nippon Telegraph and Telephone corporation (NTT). Note that this produces a just plug-in to shss erasure coding binary so that users have to install a shss binary (i.e. libshss.so) aside from liberasurecode when using shss. Please contact us if you are insterested in the NTT backend (welcome!): Kota Tsuyuzaki <tsuyuzaki.kota@lab.ntt.co.jp> Co-Author: Ryuta Kon <kon.ryuta@po.ntts.co.jp>
* This is the fix propsed by Kota to fix the reconstruction errorsKevin Greenan2015-02-071-1/+1
| | | | we were seeing after the checksum enum changes.
* Fix the extended integrity checks in the liberasurecode decodeKevin Greenan2015-02-071-1/+1
| | | | | | | | | | | | | function. Previously, it was failing if the number of invalid fragments was k or greater, which is incorrect. We should only be able to decode if: (num given fragments - num invalid fragments) >= k This means fail if: (num given fragments - num invalid fragments) < k
* Revert "Merged fix-cleanup into master"Kevin Greenan2015-02-071-2/+2
| | | | | This reverts commit dc4e6f07ce586327cbb19c1f6c31f2b3edc33def, reversing changes made to 92c39d590c63fd1dced7b3934962f47428c3c03d.
* Adjust checksum enum defintions to match pyeclibTushar Gohad2015-02-011-3/+3
| | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* Merged fix-cleanup into masterTushar Gohad2015-01-301-2/+2
|\
| * Fix free fragments memories at a backend errorfix-cleanupKota Tsuyuzaki2015-01-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | When failing at calling a backend encode (i.e. the backend return a minus value), invalid pointer error will occur at liberasurecode_encode_cleanup() because it will work to free the memory from data[i] behind the fragment header. This patch fixes it to use free_fragment_buffer to free whole memory includes the fragment header field. TODO: Add tests (or stub backend) to verify liberasurecode behaviors when a failure returnd from the backend.
* | doc: Update decode() param force_metadata_checksTushar Gohad2015-01-301-4/+3
| | | | | | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* | Add optional fragment metadata check for decodeTushar Gohad2015-01-304-19/+44
| | | | | | | | Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
* | Decreasing the verbosity of the tests and renaming one of the stripe verifyKevin Greenan2015-01-194-18/+20
| | | | | | | | | | tests to a 'fragment verify' test, since it is using is_valid_fragment and and validating fragment headers, not stripe-level.
* | The docs were not building/installing for me. This fixed it.Kevin Greenan2015-01-191-1/+1
| |
* | Updating gitignore to ignore more AM/AC stuffKevin Greenan2015-01-191-0/+4
| |
* | Make install failing to find install-sh when installing docsKevin Greenan2015-01-123-1/+8
| |
* | Changing stripe verification to properly work with clients.Kevin Greenan2015-01-112-4/+27
|/
* merge upstreamEric Lambert2014-11-091-2/+3
|\
| * README.md edited online with Bitbucketv0.9.10Tushar Gohad2014-10-281-1/+1
| |
| * README.md edited online with BitbucketTushar Gohad2014-10-281-1/+2
| |
* | add fragment validationEric Lambert2014-11-095-26/+316
| |
* | Make include of config_liberasurecode.h conditonal. Have been expermenting ↵Eric Lambert2014-11-081-0/+2
|/ | | | with using cmake to build the project and cmake does not generate the config_liberasurecode.h file.
* fixed mem leaks in unit testsEric Lambert2014-10-101-0/+23
|
* fixed mem leaks in rs_vand and xor backendEric Lambert2014-10-102-1/+3
|
* Fixed memory leak: freeing jerasure_rs_cauchy_descriptor was not completely ↵Eric Lambert2014-10-101-23/+47
| | | | freeing the schedule array
* provide a configure flag to disable -Werror at compile timeEric Lambert2014-10-091-2/+15
|
* formatting fixEric Lambert2014-10-061-6/+12
|
* reorder add_fragment_metadata arg list to be consistent with rest of codeEric Lambert2014-10-063-13/+13
|
* add backend_id and backend_version to fragment metadataEric Lambert2014-10-037-6/+63
|
* libec version is now stored in fragment headerEric Lambert2014-10-025-10/+41
|
* backends now support verion checksEric Lambert2014-10-026-38/+138
|
* Fixed macro definition of version elementsEric Lambert2014-10-011-3/+3
|
* Merged in malloc_check (pull request #6) Eric Lambert2014-10-011-0/+8
|\ | | | | Small fix to check the return code when malloc'ing temporary buffers.
| * Small fix to check the return code when malloc'ing temporary buffers.Mark Storer2014-10-011-0/+8
| |