Skip to content
代码片段 群组 项目
  1. 12月 19, 2019
  2. 12月 18, 2019
  3. 11月 26, 2019
  4. 11月 19, 2019
    • W. Felix Handte's avatar
      Add Tool to Diagnose Whether Corrupt Blobs are Plausibly Bit-Flips · b5fb2e7c
      W. Felix Handte 创作于
      I spend an increasing amount of my time looking at "Corrupted block detected"
      failures in decompression. Not infrequently, I suspect that it is the result
      of hardware failure, and that the blob has become bit-flipped or otherwise
      corrupted somewhere along the line.
      
      For that reason I was motivated to write a little tool to inspect blobs that
      fail to decompress, to try modifying them, and then check whether they
      decompress successfully. This seems like potentially a generally useful tool,
      so I figured it might be worth putting in `contrib/`.
      b5fb2e7c
  5. 11月 07, 2019
  6. 9月 13, 2019
  7. 9月 03, 2019
  8. 8月 29, 2019
  9. 8月 28, 2019
  10. 8月 27, 2019
  11. 8月 26, 2019
  12. 8月 24, 2019
  13. 7月 25, 2019
  14. 7月 22, 2019
  15. 7月 19, 2019
    • Qin Li's avatar
      fix compiling errors with clang-8 · 04a9d6b8
      Qin Li 创作于
      Compiling with clang-8 fails with the following errors:
      
      largeNbDicts.c:562:37: error: implicit conversion turns floating-point
      number into integer: 'const double' to 'U64' (aka 'unsigned long')
      [-Werror,-Wfloat-conversion]
              U64 const dTime_ns = result.nanoSecPerRun;
                        ~~~~~~~~   ~~~~~~~^~~~~~~~~~~~~
      
      zstdcli.c:300:5: error: '@return' command used in a comment that is
      not attached to a function or method declaration
      [-Werror,-Wdocumentation]
       * @return 1 means that cover parameters were correct
         ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      
      zstdcli.c:301:5: error: '@return' command used in a comment that is
      not attached to a function or method declaration
      [-Werror,-Wdocumentation]
       * @return 0 in case of malformed parameters
         ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      04a9d6b8
  16. 4月 13, 2019
    • Josh Soref's avatar
      Spelling (#1582) · a880ca23
      Josh Soref 创作于
      * spelling: accidentally
      
      * spelling: across
      
      * spelling: additionally
      
      * spelling: addresses
      
      * spelling: appropriate
      
      * spelling: assumed
      
      * spelling: available
      
      * spelling: builder
      
      * spelling: capacity
      
      * spelling: compiler
      
      * spelling: compressibility
      
      * spelling: compressor
      
      * spelling: compression
      
      * spelling: contract
      
      * spelling: convenience
      
      * spelling: decompress
      
      * spelling: description
      
      * spelling: deflate
      
      * spelling: deterministically
      
      * spelling: dictionary
      
      * spelling: display
      
      * spelling: eliminate
      
      * spelling: preemptively
      
      * spelling: exclude
      
      * spelling: failure
      
      * spelling: independence
      
      * spelling: independent
      
      * spelling: intentionally
      
      * spelling: matching
      
      * spelling: maximum
      
      * spelling: meaning
      
      * spelling: mishandled
      
      * spelling: memory
      
      * spelling: occasionally
      
      * spelling: occurrence
      
      * spelling: official
      
      * spelling: offsets
      
      * spelling: original
      
      * spelling: output
      
      * spelling: overflow
      
      * spelling: overridden
      
      * spelling: parameter
      
      * spelling: performance
      
      * spelling: probability
      
      * spelling: receives
      
      * spelling: redundant
      
      * spelling: recompression
      
      * spelling: resources
      
      * spelling: sanity
      
      * spelling: segment
      
      * spelling: series
      
      * spelling: specified
      
      * spelling: specify
      
      * spelling: subtracted
      
      * spelling: successful
      
      * spelling: return
      
      * spelling: translation
      
      * spelling: update
      
      * spelling: unrelated
      
      * spelling: useless
      
      * spelling: variables
      
      * spelling: variety
      
      * spelling: verbatim
      
      * spelling: verification
      
      * spelling: visited
      
      * spelling: warming
      
      * spelling: workers
      
      * spelling: with
      a880ca23
  17. 4月 11, 2019
    • Yann Collet's avatar
      benchfn dependencies reduced to only timefn · 59a7116c
      Yann Collet 创作于
      benchfn used to rely on mem.h, and util,
      which in turn relied on platform.h.
      Using benchfn outside of zstd required to bring all these dependencies.
      
      Now, dependency is reduced to timefn only.
      This required to create a separate timefn from util,
      and rewrite benchfn and timefn to no longer need mem.h.
      
      Separating timefn from util has a wide effect accross the code base,
      as usage of time functions is widespread.
      A lot of build scripts had to be updated to also include timefn.
      59a7116c
  18. 2月 01, 2019
  19. 12月 29, 2018
  20. 12月 22, 2018
    • Yann Collet's avatar
      fix confusion between unsigned <-> U32 · ededcfca
      Yann Collet 创作于
      as suggested in #1441.
      
      generally U32 and unsigned are the same thing,
      except when they are not ...
      
      case : 32-bit compilation for MIPS (uint32_t == unsigned long)
      
      A vast majority of transformation consists in transforming U32 into unsigned.
      In rare cases, it's the other way around (typically for internal code, such as seeds).
      
      Among a few issues this patches solves :
      - some parameters were declared with type `unsigned` in *.h,
        but with type `U32` in their implementation *.c .
      - some parameters have type unsigned*,
        but the caller user a pointer to U32 instead.
      
      These fixes are useful.
      
      However, the bulk of changes is about %u formating,
      which requires unsigned type,
      but generally receives U32 values instead,
      often just for brevity (U32 is shorter than unsigned).
      These changes are generally minor, or even annoying.
      
      As a consequence, the amount of code changed is larger than I would expect for such a patch.
      
      Testing is also a pain :
      it requires manually modifying `mem.h`,
      in order to lie about `U32`
      and force it to be an `unsigned long` typically.
      On a 64-bit system, this will break the equivalence unsigned == U32.
      Unfortunately, it will also break a few static_assert(), controlling structure sizes.
      So it also requires modifying `debug.h` to make `static_assert()` a noop.
      And then reverting these changes.
      
      So it's inconvenient, and as a consequence,
      this property is currently not checked during CI tests.
      Therefore, these problems can emerge again in the future.
      
      I wonder if it is worth ensuring proper distinction of U32 != unsigned in CI tests.
      It's another restriction for coding, adding more frustration during merge tests,
      since most platforms don't need this distinction (hence contributor will not see it),
      and while this can matter in theory, the number of platforms impacted seems minimal.
      
      Thoughts ?
      ededcfca
  21. 12月 14, 2018
  22. 12月 06, 2018
  23. 12月 02, 2018
加载中