Re: [PATCH 3/4] btrfs: Add zstd support
Thanks for the clarification! I will fix the divisions. On 6/26/17, 5:12 AM, "David Sterba"wrote: On Sun, Jun 25, 2017 at 11:30:22PM +0200, Adam Borowski wrote: > On Mon, Jun 26, 2017 at 03:03:17AM +0800, kbuild test robot wrote: > > Hi Nick, > > > > url: https://github.com/0day-ci/linux/commits/Nick-Terrell/lib-Add-xxhash-module/20170625-214344 > > config: i386-allmodconfig (attached as .config) > > compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 > > reproduce: > > # save the attached .config to linux build tree > > make ARCH=i386 > > > > All errors (new ones prefixed by >>): > > > > >> ERROR: "__udivdi3" [lib/zstd/zstd_compress.ko] undefined! > >ERROR: "__udivdi3" [fs/ufs/ufs.ko] undefined! > > Just to save you time to figure it out: > for division when one or both arguments are longer than the architecture's > word, gcc uses helper functions that are included when compiling in a hosted > environment -- but not in freestanding. > > Thus, you want do_div() instead of /; do check widths and signedness of > arguments. No do_div please, div_u64 or div64_u64. N�r��yb�X��ǧv�^�){.n�+{�n�߲)w*jg����ݢj/���z�ޖ��2�ޙ&�)ߡ�a�����G���h��j:+v���w��٥
Re: [PATCH 3/4] btrfs: Add zstd support
On Sun, Jun 25, 2017 at 11:30:22PM +0200, Adam Borowski wrote: > On Mon, Jun 26, 2017 at 03:03:17AM +0800, kbuild test robot wrote: > > Hi Nick, > > > > url: > > https://github.com/0day-ci/linux/commits/Nick-Terrell/lib-Add-xxhash-module/20170625-214344 > > config: i386-allmodconfig (attached as .config) > > compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 > > reproduce: > > # save the attached .config to linux build tree > > make ARCH=i386 > > > > All errors (new ones prefixed by >>): > > > > >> ERROR: "__udivdi3" [lib/zstd/zstd_compress.ko] undefined! > >ERROR: "__udivdi3" [fs/ufs/ufs.ko] undefined! > > Just to save you time to figure it out: > for division when one or both arguments are longer than the architecture's > word, gcc uses helper functions that are included when compiling in a hosted > environment -- but not in freestanding. > > Thus, you want do_div() instead of /; do check widths and signedness of > arguments. No do_div please, div_u64 or div64_u64. -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 3/4] btrfs: Add zstd support
On Mon, Jun 26, 2017 at 03:03:17AM +0800, kbuild test robot wrote: > Hi Nick, > > url: > https://github.com/0day-ci/linux/commits/Nick-Terrell/lib-Add-xxhash-module/20170625-214344 > config: i386-allmodconfig (attached as .config) > compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 > reproduce: > # save the attached .config to linux build tree > make ARCH=i386 > > All errors (new ones prefixed by >>): > > >> ERROR: "__udivdi3" [lib/zstd/zstd_compress.ko] undefined! >ERROR: "__udivdi3" [fs/ufs/ufs.ko] undefined! Just to save you time to figure it out: for division when one or both arguments are longer than the architecture's word, gcc uses helper functions that are included when compiling in a hosted environment -- but not in freestanding. Thus, you want do_div() instead of /; do check widths and signedness of arguments. Meow! -- ⢀⣴⠾⠻⢶⣦⠀ ⣾⠁⢠⠒⠀⣿⡁ A dumb species has no way to open a tuna can. ⢿⡄⠘⠷⠚⠋⠀ A smart species invents a can opener. ⠈⠳⣄ A master species delegates. -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 3/4] btrfs: Add zstd support
Hi Nick, [auto build test ERROR on linus/master] [also build test ERROR on v4.12-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Nick-Terrell/lib-Add-xxhash-module/20170625-214344 config: i386-allmodconfig (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: # save the attached .config to linux build tree make ARCH=i386 All errors (new ones prefixed by >>): >> ERROR: "__udivdi3" [lib/zstd/zstd_compress.ko] undefined! ERROR: "__udivdi3" [fs/ufs/ufs.ko] undefined! --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: application/gzip
Re: [PATCH 3/4] btrfs: Add zstd support
Hi Nick, [auto build test ERROR on linus/master] [also build test ERROR on v4.12-rc6 next-20170623] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Nick-Terrell/lib-Add-xxhash-module/20170625-214344 config: blackfin-allyesconfig (attached as .config) compiler: bfin-uclinux-gcc (GCC) 6.2.0 reproduce: wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=blackfin All error/warnings (new ones prefixed by >>): lib//zstd/fse_compress.c: In function 'FSE_buildCTable_wksp': >> lib//zstd/fse_compress.c:181:1: warning: the frame size of 1036 bytes is >> larger than 1024 bytes [-Wframe-larger-than=] } ^ lib//zstd/fse_compress.c: In function 'FSE_compress_wksp': lib//zstd/fse_compress.c:857:1: warning: the frame size of 1552 bytes is larger than 1024 bytes [-Wframe-larger-than=] } ^ -- lib//zstd/compress.c: In function 'ZSTD_compressBlock_lazy': >> lib//zstd/compress.c:2036:1: error: unable to find a register to spill in >> class 'CCREGS' static void ZSTD_compressBlock_lazy(ZSTD_CCtx *ctx, const void *src, size_t srcSize) { ZSTD_compressBlock_lazy_generic(ctx, src, srcSize, 0, 1); } ^~ >> lib//zstd/compress.c:2036:1: error: this is the insn: (insn 213 11 1172 9 (set (reg:BI 1429) (eq:BI (reg/v:SI 62 [ mls ]) (const_int 5 [0x5]))) lib//zstd/compress.c:1855 118 {compare_eq} (nil)) lib//zstd/compress.c:2036: confused by earlier errors, bailing out -- lib//zstd/huf_decompress.c: In function 'HUF_readDTableX4': >> lib//zstd/huf_decompress.c:556:1: warning: the frame size of 1636 bytes is >> larger than 1024 bytes [-Wframe-larger-than=] } ^ vim +/CCREGS +2036 lib//zstd/compress.c 87a5643e Nick Terrell 2017-06-22 2020 /* Save reps for next block */ 87a5643e Nick Terrell 2017-06-22 2021 ctx->repToConfirm[0] = offset_1 ? offset_1 : savedOffset; 87a5643e Nick Terrell 2017-06-22 2022 ctx->repToConfirm[1] = offset_2 ? offset_2 : savedOffset; 87a5643e Nick Terrell 2017-06-22 2023 87a5643e Nick Terrell 2017-06-22 2024 /* Last Literals */ 87a5643e Nick Terrell 2017-06-22 2025 { 87a5643e Nick Terrell 2017-06-22 2026 size_t const lastLLSize = iend - anchor; 87a5643e Nick Terrell 2017-06-22 2027 memcpy(seqStorePtr->lit, anchor, lastLLSize); 87a5643e Nick Terrell 2017-06-22 2028 seqStorePtr->lit += lastLLSize; 87a5643e Nick Terrell 2017-06-22 2029 } 87a5643e Nick Terrell 2017-06-22 2030 } 87a5643e Nick Terrell 2017-06-22 2031 87a5643e Nick Terrell 2017-06-22 2032 static void ZSTD_compressBlock_btlazy2(ZSTD_CCtx *ctx, const void *src, size_t srcSize) { ZSTD_compressBlock_lazy_generic(ctx, src, srcSize, 1, 2); } 87a5643e Nick Terrell 2017-06-22 2033 87a5643e Nick Terrell 2017-06-22 2034 static void ZSTD_compressBlock_lazy2(ZSTD_CCtx *ctx, const void *src, size_t srcSize) { ZSTD_compressBlock_lazy_generic(ctx, src, srcSize, 0, 2); } 87a5643e Nick Terrell 2017-06-22 2035 87a5643e Nick Terrell 2017-06-22 @2036 static void ZSTD_compressBlock_lazy(ZSTD_CCtx *ctx, const void *src, size_t srcSize) { ZSTD_compressBlock_lazy_generic(ctx, src, srcSize, 0, 1); } 87a5643e Nick Terrell 2017-06-22 2037 87a5643e Nick Terrell 2017-06-22 2038 static void ZSTD_compressBlock_greedy(ZSTD_CCtx *ctx, const void *src, size_t srcSize) { ZSTD_compressBlock_lazy_generic(ctx, src, srcSize, 0, 0); } 87a5643e Nick Terrell 2017-06-22 2039 87a5643e Nick Terrell 2017-06-22 2040 FORCE_INLINE 87a5643e Nick Terrell 2017-06-22 2041 void ZSTD_compressBlock_lazy_extDict_generic(ZSTD_CCtx *ctx, const void *src, size_t srcSize, const U32 searchMethod, const U32 depth) 87a5643e Nick Terrell 2017-06-22 2042 { 87a5643e Nick Terrell 2017-06-22 2043 seqStore_t *seqStorePtr = &(ctx->seqStore); 87a5643e Nick Terrell 2017-06-22 2044 const BYTE *const istart = (const BYTE *)src; :: The code at line 2036 was first introduced by commit :: 87a5643e3b02e4cb9fb83bf8f6da13be18677883 lib: Add zstd modules :: TO: Nick Terrell:: CC: 0day robot --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: application/gzip