| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The well-known idiom to compute a required number of data blocks
of size B to contain data of length d is:
(d + (B-1))/B
The code we use, with ceill(), computes the same value, but does
it in an unorthodox way. This makes a reviewer to doubt himself
and even run tests to make sure we're really computing the
obvious thing.
Apropos the reviewer confusion, the code in Phazr.IO looks weird.
It uses (word_size - hamming_distance) to compute the necessary
number of blocks... but then returns the amount of memory needed
to store blocks of a different size (word_size). We left all of it
alone and return exactly the same values that the old computation
returned.
All these computations were the only thing in the code that used
-lm, so drop that too.
Coincidentially, this patch solves the crash of distro-built
packages of liberasurecode (see Red Hat bug #1454543). But it's
a side effect. Expect a proper patch soon.
Change-Id: Ib297f6df304abf5ca8c27d3392b1107a525e0be0
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We're having trouble on Fedora when the build system runs
on Intel CPUs. The ./configure detects AVX instructions and
builds liberasurecode with them. The resulting library crashes
with SIGILL when users run it on ADM CPUs without AVX.
See the details here:
https://bugzilla.redhat.com/show_bug.cgi?id=1454543
The patch allows to disable the optimizations, so that
distro packaging then can invoke this options and build
portable libraries.
For the record, "make test" runs about 16% slower on an Intel
CPU if optimizations are disabled. So, there's a measurable
performance impact. However, operators intersted in outright
performance might want to consider Erasure Coding implementations
other than the one built-in into liberasurecode. The library
supports other back-ends that are significantly faster than
even optimized built-in code.
Change-Id: I09603b97ceeb833ba582cf3217e0be51c019d645
|
|
|
|
| |
Change-Id: I684294b2eb4362820fe900f7bdd4b589ec94f7db
|
| |
|
| |
|
|
|
|
| |
... (keep version in one place)
|
|
|
|
|
| |
... fixes issues with builds where configure is
invoked from a directory other than the topdir
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| | |
This is meant to be used in cases where ISA-L and Jerasure cannot be used.
|
| | |
|
| |
| |
| |
| | |
Ref commit: 5cbab56a1a8ba78c72e8238458b462df0611070f
|
|/ |
|
|
|
|
| |
CPUID and directly doing compiler checks in autoconf.ac
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fedora build system sets global CFLAGS that include things like
mandatory security enhancements. It works for all other packages,
but ./configure in liberasurecode overrides provides CFLAGS.
See Red Hat bug for a humorous workaround:
https://bugzilla.redhat.com/show_bug.cgi?id=1208695#c4
Note that this patch does not monkey with the --debug side.
Hopefuly this does not violate KISS principle.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
little clean-up, but the tests are passing...
|
|\ |
|
| |
| |
| |
| | |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|/
|
|
| |
existing warnings.
|
| |
|
|
|
|
|
| |
Currently only works on Linux (build/tests will run on OS X but
coverage data is not generated).
|
|
|
|
| |
it is used by the publid headers...
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
from jerasure
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
|
|
|
| |
... Fixes issue with header dependencies not
being tracked earlier
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
would fail because the AM_SILENT_RULES did not exist until 1.11.
|
|
|
|
|
|
|
|
| |
NOTE: We need to ensure that any erasure code backend using algebraic
signatures *must use* the same exact GF as those used in this library. This
usually means same 'w' and primitive polynomial.
I plan to make the same change to Jerasure, so it will be compatible.
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
|
|
|
|
| |
.. so we don't add unnecessary libs to the AX_EXT compile lines
.. this has a tendancy to report false failures if libraries
.. are not found in LD_LIBRARY_PATH (e.g. -lgf_complete)
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
|
|
|
| |
Facing some nasty dlopen() issues when testing with
"test/liberasurecode_test"
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|
|
|
|
| |
Signed-off-by: Tushar Gohad <tushar.gohad@intel.com>
|