]>
git.ipfire.org Git - thirdparty/zstd.git/log
Björn Ketelaars [Sat, 15 Feb 2020 11:42:00 +0000 (12:42 +0100)]
Fix forgotten portable header prefix
PR #1987 forgot to prefix another include causing lz4 detection to fail.
Nick Terrell [Tue, 11 Feb 2020 20:03:43 +0000 (12:03 -0800)]
Merge pull request #1996 from terrelln/cifuzz-dogfood
[CIFuzz] Rename output path to artifacts
Nick Terrell [Tue, 11 Feb 2020 18:43:15 +0000 (10:43 -0800)]
[CIFuzz] Rename output path to artifacts
Nick Terrell [Mon, 10 Feb 2020 20:55:58 +0000 (12:55 -0800)]
Merge pull request #1993 from terrelln/cifuzz-dogfood
Enable oss-fuzz CIFuzz dogfood
Nick Terrell [Mon, 10 Feb 2020 20:36:56 +0000 (12:36 -0800)]
Enable oss-fuzz CIFuzz dogfood
Bimba Shrestha [Thu, 6 Feb 2020 22:10:51 +0000 (14:10 -0800)]
[build-issue] More portable header prefix usage (#) (#1987)
* make 4.3 build issue fix
* Changing header name and adding comment
Bimba Shrestha [Thu, 6 Feb 2020 21:51:43 +0000 (13:51 -0800)]
Displaying level in --show-default-cparams (#1991)
* Displaying level in --show-default-cparams
* Displaying actual enum value instead of level
Bimba Shrestha [Thu, 6 Feb 2020 00:55:00 +0000 (16:55 -0800)]
Removing symbols already in unit tests and adding some new unit tests for missing symbols (#1985)
* Removing symbols that are not being tested
* Removing symbols used in zstdcli, fileio, dibio and benchzstd
* Removing symbols used in zbuff and add test-zbuff to travis
* Removing remaining symbols and adding unit tests instead
* Removing symbols test entirely
Bimba Shrestha [Tue, 4 Feb 2020 00:48:21 +0000 (16:48 -0800)]
Merge pull request #1982 from bimbashrestha/quick
Using appliedParams instead of "supplied" params in compressBegin()
Bimba Shrestha [Mon, 3 Feb 2020 22:43:55 +0000 (14:43 -0800)]
Merge pull request #1980 from bimbashrestha/params
Adding --show-default-cparams to cli
Bimba Shrestha [Mon, 3 Feb 2020 22:40:26 +0000 (14:40 -0800)]
Merge pull request #1981 from bimbashrestha/bug-fix
Benchzstd multiple file decompression enable
Bimba Shrestha [Mon, 3 Feb 2020 17:52:39 +0000 (09:52 -0800)]
Adding assert(NB_STRATEGIES == upperLimit)
Bimba Shrestha [Mon, 3 Feb 2020 17:38:16 +0000 (09:38 -0800)]
Line-wrapping
Bimba Shrestha [Fri, 31 Jan 2020 23:49:07 +0000 (15:49 -0800)]
Using appliedParams instead of supplied params
Bimba Shrestha [Fri, 31 Jan 2020 19:54:14 +0000 (11:54 -0800)]
Removing assert and changing ratio cSize
Bimba Shrestha [Fri, 31 Jan 2020 18:54:02 +0000 (10:54 -0800)]
Adding (void)ZSTD_strategyMap
Bimba Shrestha [Fri, 31 Jan 2020 18:47:17 +0000 (10:47 -0800)]
Adding static assert and using it in cli
Bimba Shrestha [Fri, 31 Jan 2020 18:38:19 +0000 (10:38 -0800)]
Moving to same category as -v
Bimba Shrestha [Fri, 31 Jan 2020 01:54:42 +0000 (17:54 -0800)]
Moving documentation and elaborating
Bimba Shrestha [Fri, 31 Jan 2020 01:54:01 +0000 (17:54 -0800)]
Adding assert and using ZSTD_STRATEGY_MAX as ZSTD_NB_STRATEGIES
Bimba Shrestha [Fri, 31 Jan 2020 01:16:02 +0000 (17:16 -0800)]
Adding back one cast and using UTIL_FILESIZE_UNKNOWN to check unknown file size
Bimba Shrestha [Fri, 31 Jan 2020 01:11:38 +0000 (17:11 -0800)]
Documenting in the man file
Bimba Shrestha [Fri, 31 Jan 2020 01:07:22 +0000 (17:07 -0800)]
Removing more casts
Bimba Shrestha [Fri, 31 Jan 2020 01:05:33 +0000 (17:05 -0800)]
Removing unnecessary cast
Bimba Shrestha [Fri, 31 Jan 2020 00:52:07 +0000 (16:52 -0800)]
Moving default cparams back, checking for unknown file size, using getCParams()
Bimba Shrestha [Thu, 30 Jan 2020 22:29:04 +0000 (14:29 -0800)]
Convertion nit U32 -> size_t
Bimba Shrestha [Thu, 30 Jan 2020 22:14:27 +0000 (14:14 -0800)]
Update comment
Bimba Shrestha [Thu, 30 Jan 2020 22:12:03 +0000 (14:12 -0800)]
Adding --show-default-cparams (show cparams before compressing
Nick Terrell [Wed, 29 Jan 2020 23:32:19 +0000 (15:32 -0800)]
Merge pull request #1977 from terrelln/copyless
Improve wildcopy performance across the board
Bimba Shrestha [Wed, 29 Jan 2020 06:11:51 +0000 (22:11 -0800)]
Merge pull request #1978 from bimbashrestha/quick
[Typo][fix] make benchmarking typo fix
Bimba Shrestha [Wed, 29 Jan 2020 05:39:20 +0000 (21:39 -0800)]
Typo baseline_build -> baseline_label
Nick Terrell [Wed, 29 Jan 2020 04:37:04 +0000 (20:37 -0800)]
Improve wildcopy performance across the board
Bimba Shrestha [Tue, 28 Jan 2020 19:29:43 +0000 (11:29 -0800)]
[automated_benchmarking] Make arguments optional and add --dict argument (#1968)
* Make arugments optional and add --dict argument
* Removing accidental print statement
* Change to more likely scenario for dictionary compression benchmark
Yann Collet [Mon, 27 Jan 2020 19:39:29 +0000 (11:39 -0800)]
added ability to remove error messages and dictionary support (#1975)
for the benefit of smaller binary.
Yann Collet [Sat, 25 Jan 2020 04:16:28 +0000 (20:16 -0800)]
refactor of harness, for clarity (#1974)
following #1953 (false positive, due to heuristic confusion)
Yann Collet [Fri, 24 Jan 2020 23:04:02 +0000 (15:04 -0800)]
Merge branch 'dev' of github.com:facebook/zstd into dev
Yann Collet [Fri, 24 Jan 2020 22:12:25 +0000 (14:12 -0800)]
updated CHANGELOG
Nick Terrell [Fri, 24 Jan 2020 06:02:50 +0000 (22:02 -0800)]
Merge pull request #1972 from terrelln/check-cont
Move ZSTD_checkContinuity() to zstd_decompress_block.c
Nick Terrell [Fri, 24 Jan 2020 06:02:32 +0000 (22:02 -0800)]
Merge pull request #1973 from terrelln/mobile-perf
Fix performance regression on aarch64 with clang
Nick Terrell [Fri, 24 Jan 2020 01:54:48 +0000 (17:54 -0800)]
Initialize dctx->bType to silence valgrind false positive
Nick Terrell [Fri, 24 Jan 2020 00:18:52 +0000 (16:18 -0800)]
Fix performance regression on aarch64 with clang
Nick Terrell [Thu, 23 Jan 2020 20:27:39 +0000 (12:27 -0800)]
Move ZSTD_checkContinuity() to zstd_decompress_block.c
Nick Terrell [Wed, 22 Jan 2020 23:42:50 +0000 (15:42 -0800)]
Merge pull request #1965 from terrelln/android-fix
Fix timefn on android
Nick Terrell [Wed, 22 Jan 2020 19:17:30 +0000 (11:17 -0800)]
Update comment in timefn
Nick Terrell [Wed, 22 Jan 2020 02:57:16 +0000 (18:57 -0800)]
Fix timefn on android
Felix Handte [Tue, 21 Jan 2020 16:54:00 +0000 (11:54 -0500)]
Merge pull request #1956 from PhoebeHui/dev
Add vcpkg installation instructions
PhoebeHui [Mon, 20 Jan 2020 07:51:40 +0000 (23:51 -0800)]
Update comments
Nick Terrell [Sat, 18 Jan 2020 02:01:35 +0000 (18:01 -0800)]
Merge pull request #1957 from terrelln/fix-ultra
Fix lowLimit underflow in overflow correction
Nick Terrell [Fri, 17 Jan 2020 22:46:00 +0000 (14:46 -0800)]
Merge pull request #1958 from terrelln/docs
Add --single-thread to zstd --help
Nick Terrell [Fri, 17 Jan 2020 22:20:44 +0000 (14:20 -0800)]
Fix playTests.sh for 32-bit mode
Nick Terrell [Fri, 17 Jan 2020 20:22:29 +0000 (12:22 -0800)]
Add --single-thread to zstd --help
Nick Terrell [Fri, 17 Jan 2020 20:05:53 +0000 (12:05 -0800)]
Fix lowLimit underflow in overflow correction
PhoebeHui [Fri, 17 Jan 2020 11:31:08 +0000 (03:31 -0800)]
Add vcpkg installation instructions
Nick Terrell [Tue, 14 Jan 2020 00:16:25 +0000 (16:16 -0800)]
Merge pull request #1950 from terrelln/ctest
[cmake] Add playTests.sh as a test
Nick Terrell [Mon, 13 Jan 2020 22:22:46 +0000 (14:22 -0800)]
[util] Fix readLineFromFile on Cygwin
Nick Terrell [Mon, 13 Jan 2020 19:52:33 +0000 (11:52 -0800)]
[cmake] Add playTests.sh as a test
Nick Terrell [Mon, 13 Jan 2020 19:35:28 +0000 (11:35 -0800)]
Merge pull request #1948 from lazka/cygwin-fix-c99-build
Fix the c99/cmake build under Cygwin/MSYS2
Christoph Reiter [Sat, 11 Jan 2020 09:41:56 +0000 (10:41 +0100)]
appveyor: build with CMake under Cygwin
Nick Terrell [Sat, 11 Jan 2020 02:02:11 +0000 (18:02 -0800)]
Fix super block compression and stream raw blocks in decompression (#1947)
Super blocks must never violate the zstd block bound of input_size + ZSTD_blockHeaderSize. The individual sub-blocks may, but not the super block. If the superblock violates the block bound we are liable to violate ZSTD_compressBound(), which we must not do. Whenever the super block violates the block bound we instead emit an uncompressed block.
This means we increase the latency because of the single uncompressed block. I fix this by enabling streaming an uncompressed block, so the latency of an uncompressed block is 1 byte. This doesn't reduce the latency of the buffer-less API, but I don't think we really care.
* I added a test case that verifies that the decompression has 1 byte latency.
* I rely on existing zstreamtest / fuzzer / libfuzzer regression tests for correctness. During development I had several correctness bugs, and they easily caught them.
* The added assert that the superblock doesn't violate the block bound will help us discover any missed conditions (though I think I got them all).
Credit to OSS-Fuzz.
Christoph Reiter [Sat, 11 Jan 2020 00:04:14 +0000 (01:04 +0100)]
Fix the c99/cmake build under Cygwin/MSYS2
When building zst under cygwin or msys2 with std=c99 the build would fail because
of an undefined fileno()/_fileno(), which is used by the IS_CONSOLE() macro.
When building with -std=c99 (gcc otherwise defaults to gnu, which implies POSIX),
which is the default of the cmake build, then including unistd.h wont define
_POSIX_VERSION and all other headers also wont expose POSIX API.
To fix this make sure to define _POSIX_C_SOURCE with the version we want before including
unistd.h and so that _POSIX_VERSION is set to the version provided by the system.
Since Cygwin/MSYS2 just follow POSIX we can also remove their special cases for
defining IS_CONSOLE().
And, for completeness, also explicitly include stdio.h which is what actually declares fileno().
Tested with the normal make file and cmake under MSYS2 and Cygwin.
Bimba Shrestha [Fri, 10 Jan 2020 22:25:24 +0000 (14:25 -0800)]
Adding new cli endpoint --patch-from= (#1940)
* Adding new cli endpoint --diff-from=
* Appveyor conversion nit
* Using bool set trick instead of direct set
* Removing --diff-from and only leaving --diff-from=#
* Throwing error when both dictFileName vars are set
* Clean up syntax
* Renaming diff-from to patch-from
* Revering comma separated syntax clean up
* Updating playtests with patch-from
* Uncommenting accidentally commented
* Updating remaining docs and var names to be patch-from instead of diff-from
* Constifying
* Using existing log2 function and removing newly created one
* Argument order (moving prefs to end)
* Using comma separated syntax
* Moving to outside #ifndef
Nick Terrell [Thu, 9 Jan 2020 19:38:50 +0000 (11:38 -0800)]
[fuzz] Allow zero sized buffers for streaming fuzzers (#1945)
* Allow zero sized buffers in `stream_decompress`. Ensure that we never have two
zero sized buffers in a row so we guarantee forwards progress.
* Make case 4 in `stream_round_trip` do a zero sized buffers call followed by
a full call to guarantee forwards progress.
* Fix `limitCopy()` in legacy decoders.
* Fix memcpy in `zstdmt_compress.c`.
Catches the bug fixed in PR #1939
Igor Sugak [Thu, 9 Jan 2020 00:17:42 +0000 (16:17 -0800)]
fix UBSAN's invalid-null-argument error in zstd_decompress.c (#1939)
Nick Terrell [Wed, 8 Jan 2020 21:20:56 +0000 (13:20 -0800)]
[fuzz] Fix regression_driver.c with directory input (#1944)
The `numFiles` variable wasn't updated, so the fuzzer didn't do anything.
I did two things to fix this:
1. Remove the `numFiles` variable entirely.
2. Error if we can't open a file and print the number of files tested.
Christoph Reiter [Tue, 7 Jan 2020 23:48:26 +0000 (00:48 +0100)]
Make UTIL_countPhysicalCores() work under Cygwin (#1941)
Cygwin currently uses the fallback implementation which just returns 1 every time,
which leads to bad performance when zstd is called with -T0 for example.
Instead use the POSIX implementation used for the BSDs which works just fine under Cygwin.
Tested under Cygwin and MSYS2.
Yann Collet [Tue, 7 Jan 2020 17:51:22 +0000 (09:51 -0800)]
updated CHANGELOG
one missing item in v1.4.4
Bimba Shrestha [Mon, 6 Jan 2020 22:19:11 +0000 (14:19 -0800)]
[bench] Automated benchmarking script (#1906)
* Initial revised automated benchmarking script
* Updating nb_iterations and making loop infinite
* Allowing benchmarking params to be changed from cli
* Renaming old speed test
* Removing numpy dependency for cli
* Change filename and benchmakr on pr level
* Moving build outside loop and adding iterations param
* Moving benchmarking to seperate travis ci test
* Fixing typo and using unused variable
* Added mode labels and updated README accordingly
* Adding new mode 'current' that compraes facebook:dev against current hash
* Typo
* Reverting previous accidental diff
* Typo
* Adding frequency config variable to prevent github from blacklisting
* Added new argument for frequency of fetching new prs
* Updating documentation
Bimba Shrestha [Sat, 4 Jan 2020 00:53:51 +0000 (16:53 -0800)]
[fuzz] Dividing by targetCBlockSize instead of blockSize for nbBlocks fit (#1936)
* Adding fail logging for superblock flow
* Dividing by targetCBlockSize instead of blockSize
* Adding new const and using more acurate formula for nbBlocks
* Only do dstCapacity check if using superblock
* Remvoing disabling logic
* Updating test to make it catch more extreme case of previou bug
* Also updating comment
* Only taking compressEnd shortcut on non-superblock
Bimba Shrestha [Sat, 4 Jan 2020 00:36:47 +0000 (16:36 -0800)]
[doc] Adding -M# decompression operation modifier documentation (#1938)
* Adding -M# operation modifier documentation
* Adding long name, typo and update desc
Felix Handte [Fri, 3 Jan 2020 21:07:16 +0000 (16:07 -0500)]
Merge pull request #1920 from felixhandte/fix-mtim-again
Use statbuf->st_mtim Again
Felix Handte [Thu, 26 Dec 2019 19:16:23 +0000 (14:16 -0500)]
Fix playTests.sh Under QEMU (#1923)
W. Felix Handte [Thu, 5 Dec 2019 17:02:35 +0000 (12:02 -0500)]
Also Define _ATFILE_SOURCE
W. Felix Handte [Wed, 4 Dec 2019 21:59:16 +0000 (16:59 -0500)]
Add Comment
W. Felix Handte [Wed, 4 Dec 2019 15:25:07 +0000 (10:25 -0500)]
Use statbuf->st_mtim Again
W. Felix Handte [Thu, 5 Dec 2019 22:14:57 +0000 (17:14 -0500)]
Add Travis Test that Builds ARM on Trusty
W. Felix Handte [Thu, 5 Dec 2019 22:14:29 +0000 (17:14 -0500)]
Fix playTests.sh Under QEMU
Yann Collet [Thu, 19 Dec 2019 20:58:24 +0000 (12:58 -0800)]
Merge pull request #1928 from bimbashrestha/bimba-oss
[fuzz] Adding bool to check if there is enough room to emit noCompress Superblocks
Felix Handte [Thu, 19 Dec 2019 17:08:28 +0000 (12:08 -0500)]
Merge pull request #1932 from felixhandte/diagnose-corruption-dicts
Add Support for Dictionaries in Corruption Diagnosis Tool
W. Felix Handte [Wed, 18 Dec 2019 19:26:35 +0000 (11:26 -0800)]
Add Support for Dictionaries
Yann Collet [Wed, 18 Dec 2019 19:49:26 +0000 (11:49 -0800)]
Merge pull request #1929 from facebook/travisTest
added ppc64le tests on travis
W. Felix Handte [Wed, 18 Dec 2019 19:29:53 +0000 (11:29 -0800)]
Print Summary of Errors Encountered
Bimba Shrestha [Wed, 18 Dec 2019 01:16:51 +0000 (17:16 -0800)]
Constifying, malloc check and naming nit
W. Felix Handte [Tue, 17 Dec 2019 19:26:18 +0000 (11:26 -0800)]
Don't Rely on Implicit Return in Main
Yann Collet [Sat, 14 Dec 2019 21:29:24 +0000 (13:29 -0800)]
added ppc64le tests on travis
on real hardware
Bimba Shrestha [Sat, 14 Dec 2019 00:50:21 +0000 (16:50 -0800)]
One more type conversion
Bimba Shrestha [Sat, 14 Dec 2019 00:38:11 +0000 (16:38 -0800)]
Adding explict cast to satisfy appveyor ci
Bimba Shrestha [Sat, 14 Dec 2019 00:24:49 +0000 (16:24 -0800)]
More void* issues. Just replacing with BYTE*
Bimba Shrestha [Sat, 14 Dec 2019 00:06:57 +0000 (16:06 -0800)]
'void* size issue' fix
Bimba Shrestha [Fri, 13 Dec 2019 23:47:28 +0000 (15:47 -0800)]
Adding bool to check if enough room left for noCompress superblocks
Bimba Shrestha [Fri, 13 Dec 2019 23:31:29 +0000 (15:31 -0800)]
Add test to catch too many noCompress superblocks on streaming
Yann Collet [Tue, 10 Dec 2019 21:17:00 +0000 (13:17 -0800)]
Merge pull request #1891 from bimbashrestha/oss
[fuzz] Superblock fuzz issues
Yann Collet [Tue, 10 Dec 2019 21:16:45 +0000 (13:16 -0800)]
Merge pull request #1924 from ned14/dev
Make idiomatic cmake install so third party cmake installers work right.
Make idiomatic cmake install so third party cmake installers work right.
Bimba Shrestha [Wed, 4 Dec 2019 23:51:17 +0000 (15:51 -0800)]
Making const, removing unnecessary indent, changing parameter order
Bimba Shrestha [Wed, 4 Dec 2019 23:23:13 +0000 (15:23 -0800)]
Moving init/end functions, moving compressSuperBlock inside body()
Bimba Shrestha [Wed, 4 Dec 2019 22:52:27 +0000 (14:52 -0800)]
Refactor
Bimba Shrestha [Wed, 4 Dec 2019 18:02:17 +0000 (10:02 -0800)]
[fuzz] msan uninitialized unsigned value (#1908)
Fixes new fuzz issue
Credit to OSS-Fuzz
* Initializing unsigned value
* Initialilzing to 1 instead of 0 because its more conservative
* Unconditionoally setting to check first and then checking zero
* Moving bool to before block for c90
* Move check set before block
Yann Collet [Wed, 4 Dec 2019 01:06:42 +0000 (17:06 -0800)]
bumped version number
so that potential issue report do not confuse `dev` with latest release
Yann Collet [Tue, 3 Dec 2019 23:35:07 +0000 (15:35 -0800)]
Merge pull request #1893 from felixhandte/check-flipped-bits
Add Tool to Diagnose Whether Corrupt Blobs are Plausibly Bit-Flips
Yann Collet [Tue, 3 Dec 2019 23:31:11 +0000 (15:31 -0800)]
Merge pull request #1907 from selavy/check-fread-r1895
Check for fread failure