Hi Nick, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on cryptodev/master] [also build test WARNING on kdave/for-next f2fs/dev-test linus/master v5.12-rc4 next-20210326] [cannot apply to crypto/master kees/for-next/pstore squashfs/master] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Nick-Terrell/Update-to-zstd-1-4-10/20210327-031827 base: https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git master config: um-allmodconfig (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): # https://github.com/0day-ci/linux/commit/ebbff13fa6a537fb8b3dc6b42c3093f9ce4358f8 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Nick-Terrell/Update-to-zstd-1-4-10/20210327-031827 git checkout ebbff13fa6a537fb8b3dc6b42c3093f9ce4358f8 # save the attached .config to linux build tree make W=1 ARCH=um If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): lib/zstd/compress/zstd_compress_sequences.c:17: warning: Cannot understand * -log2(x / 256) lookup table for x in [0, 256). on line 17 - I thought it was a doc line lib/zstd/compress/zstd_compress_sequences.c:58: warning: Function parameter or member 'nbSeq' not described in 'ZSTD_useLowProbCount' >> lib/zstd/compress/zstd_compress_sequences.c:58: warning: expecting prototype for 1 else we should(). Prototype was for ZSTD_useLowProbCount() instead >> lib/zstd/compress/zstd_compress_sequences.c:67: warning: wrong kernel-doc identifier on line: * Returns the cost in bytes of encoding the normalized count header. lib/zstd/compress/zstd_compress_sequences.c:85: warning: Function parameter or member 'count' not described in 'ZSTD_entropyCost' lib/zstd/compress/zstd_compress_sequences.c:85: warning: Function parameter or member 'max' not described in 'ZSTD_entropyCost' lib/zstd/compress/zstd_compress_sequences.c:85: warning: Function parameter or member 'total' not described in 'ZSTD_entropyCost' >> lib/zstd/compress/zstd_compress_sequences.c:85: warning: expecting prototype for Returns the cost in bits of encoding the distribution described by count(). Prototype was for ZSTD_entropyCost() instead lib/zstd/compress/zstd_compress_sequences.c:99: warning: wrong kernel-doc identifier on line: * Returns the cost in bits of encoding the distribution in count using ctable. lib/zstd/compress/zstd_compress_sequences.c:139: warning: Function parameter or member 'norm' not described in 'ZSTD_crossEntropyCost' lib/zstd/compress/zstd_compress_sequences.c:139: warning: Function parameter or member 'accuracyLog' not described in 'ZSTD_crossEntropyCost' lib/zstd/compress/zstd_compress_sequences.c:139: warning: Function parameter or member 'count' not described in 'ZSTD_crossEntropyCost' lib/zstd/compress/zstd_compress_sequences.c:139: warning: Function parameter or member 'max' not described in 'ZSTD_crossEntropyCost' >> lib/zstd/compress/zstd_compress_sequences.c:139: warning: expecting prototype for Returns the cost in bits of encoding the distribution in count using the(). Prototype was for ZSTD_crossEntropyCost() instead -- lib/zstd/compress/zstd_ldm.c:584: warning: Function parameter or member 'rawSeqStore' not described in 'maybeSplitSequence' lib/zstd/compress/zstd_ldm.c:584: warning: Function parameter or member 'remaining' not described in 'maybeSplitSequence' lib/zstd/compress/zstd_ldm.c:584: warning: Function parameter or member 'minMatch' not described in 'maybeSplitSequence' >> lib/zstd/compress/zstd_ldm.c:584: warning: expecting prototype for If the sequence length is longer than remaining then the sequence is split(). Prototype was for maybeSplitSequence() instead -- >> lib/zstd/decompress/zstd_decompress.c:992: warning: wrong kernel-doc identifier on line: * Similar to ZSTD_nextSrcSizeToDecompress(), but when when a block input can be streamed, -- lib/zstd/decompress/huf_decompress.c:122: warning: Function parameter or member 'symbol' not described in 'HUF_DEltX1_set4' lib/zstd/decompress/huf_decompress.c:122: warning: Function parameter or member 'nbBits' not described in 'HUF_DEltX1_set4' >> lib/zstd/decompress/huf_decompress.c:122: warning: expecting prototype for This is used to lay down 4 entries at(). Prototype was for HUF_DEltX1_set4() instead -- >> lib/zstd/compress/zstd_compress.c:128: warning: wrong kernel-doc identifier on line: * Clears and frees all of the dictionaries in the CCtx. lib/zstd/compress/zstd_compress.c:265: warning: wrong kernel-doc identifier on line: * Initializes the cctxParams from params and compressionLevel. lib/zstd/compress/zstd_compress.c:289: warning: wrong kernel-doc identifier on line: * Sets cctxParams' cParams and fParams from params, but otherwise leaves them alone. lib/zstd/compress/zstd_compress.c:910: warning: wrong kernel-doc identifier on line: * Initializes the local dict using the requested parameters. lib/zstd/compress/zstd_compress.c:1457: warning: wrong kernel-doc identifier on line: * Controls, for this matchState reset, whether the tables need to be cleared / lib/zstd/compress/zstd_compress.c:1473: warning: cannot understand function prototype: 'typedef enum ' lib/zstd/compress/zstd_compress.c:5008: warning: Function parameter or member 'cParams' not described in 'ZSTD_dedicatedDictSearch_revertCParams' >> lib/zstd/compress/zstd_compress.c:5008: warning: expecting prototype for Reverses the adjustment applied to cparams when enabling dedicated dict(). Prototype was for ZSTD_dedicatedDictSearch_revertCParams() instead vim +58 lib/zstd/compress/zstd_compress_sequences.c 52 53 /** 54 * Returns true if we should use ncount=-1 else we should 55 * use ncount=1 for low probability symbols instead. 56 */ 57 static unsigned ZSTD_useLowProbCount(size_t const nbSeq) > 58 { 59 /* Heuristic: This should cover most blocks <= 16K and 60 * start to fade out after 16K to about 32K depending on 61 * comprssibility. 62 */ 63 return nbSeq >= 2048; 64 } 65 66 /** > 67 * Returns the cost in bytes of encoding the normalized count header. 68 * Returns an error if any of the helper functions return an error. 69 */ 70 static size_t ZSTD_NCountCost(unsigned const* count, unsigned const max, 71 size_t const nbSeq, unsigned const FSELog) 72 { 73 BYTE wksp[FSE_NCOUNTBOUND]; 74 S16 norm[MaxSeq + 1]; 75 const U32 tableLog = FSE_optimalTableLog(FSELog, nbSeq, max); 76 FORWARD_IF_ERROR(FSE_normalizeCount(norm, tableLog, count, nbSeq, max, ZSTD_useLowProbCount(nbSeq)), ""); 77 return FSE_writeNCount(wksp, sizeof(wksp), norm, max, tableLog); 78 } 79 80 /** 81 * Returns the cost in bits of encoding the distribution described by count 82 * using the entropy bound. 83 */ 84 static size_t ZSTD_entropyCost(unsigned const* count, unsigned const max, size_t const total) > 85 { 86 unsigned cost = 0; 87 unsigned s; 88 for (s = 0; s <= max; ++s) { 89 unsigned norm = (unsigned)((256 * count[s]) / total); 90 if (count[s] != 0 && norm == 0) 91 norm = 1; 92 assert(count[s] < total); 93 cost += count[s] * kInverseProbabilityLog256[norm]; 94 } 95 return cost >> 8; 96 } 97 98 /** 99 * Returns the cost in bits of encoding the distribution in count using ctable. 100 * Returns an error if ctable cannot represent all the symbols in count. 101 */ 102 size_t ZSTD_fseBitCost( 103 FSE_CTable const* ctable, 104 unsigned const* count, 105 unsigned const max) 106 { 107 unsigned const kAccuracyLog = 8; 108 size_t cost = 0; 109 unsigned s; 110 FSE_CState_t cstate; 111 FSE_initCState(&cstate, ctable); 112 if (ZSTD_getFSEMaxSymbolValue(ctable) < max) { 113 DEBUGLOG(5, "Repeat FSE_CTable has maxSymbolValue %u < %u", 114 ZSTD_getFSEMaxSymbolValue(ctable), max); 115 return ERROR(GENERIC); 116 } 117 for (s = 0; s <= max; ++s) { 118 unsigned const tableLog = cstate.stateLog; 119 unsigned const badCost = (tableLog + 1) << kAccuracyLog; 120 unsigned const bitCost = FSE_bitCost(cstate.symbolTT, tableLog, s, kAccuracyLog); 121 if (count[s] == 0) 122 continue; 123 if (bitCost >= badCost) { 124 DEBUGLOG(5, "Repeat FSE_CTable has Prob[%u] == 0", s); 125 return ERROR(GENERIC); 126 } 127 cost += (size_t)count[s] * bitCost; 128 } 129 return cost >> kAccuracyLog; 130 } 131 132 /** 133 * Returns the cost in bits of encoding the distribution in count using the 134 * table described by norm. The max symbol support by norm is assumed >= max. 135 * norm must be valid for every symbol with non-zero probability in count. 136 */ 137 size_t ZSTD_crossEntropyCost(short const* norm, unsigned accuracyLog, 138 unsigned const* count, unsigned const max) > 139 { 140 unsigned const shift = 8 - accuracyLog; 141 size_t cost = 0; 142 unsigned s; 143 assert(accuracyLog <= 8); 144 for (s = 0; s <= max; ++s) { 145 unsigned const normAcc = (norm[s] != -1) ? (unsigned)norm[s] : 1; 146 unsigned const norm256 = normAcc << shift; 147 assert(norm256 > 0); 148 assert(norm256 < 256); 149 cost += count[s] * kInverseProbabilityLog256[norm256]; 150 } 151 return cost >> 8; 152 } 153 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip