Re: [PATCH 1/1] lz4: Implement lz4 with dynamic offset length.

kbuild test robot
2018-03-22T23:33:03Z

[-- Attachment #1: Type: text/plain, Size: 4484 bytes --]

Hi Maninder,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v4.16-rc6]
[cannot apply to next-20180322]
[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/Maninder-Singh/cover-letter-lz4-Implement-lz4-with-dynamic-offset-length/20180323-064137
config: i386-randconfig-s1-03221113 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

All errors (new ones prefixed by >>):

fs/squashfs/lz4_wrapper.c: In function 'lz4_uncompress':
>> fs/squashfs/lz4_wrapper.c:110:8: error: too few arguments to function 'LZ4_decompress_safe'
res = LZ4_decompress_safe(stream->input, stream->output,
^~~~~~~~~~~~~~~~~~~
In file included from fs/squashfs/lz4_wrapper.c:13:0:
include/linux/lz4.h:301:5: note: declared here
int LZ4_decompress_safe(const char *source, char *dest, int compressedSize,
^~~~~~~~~~~~~~~~~~~

vim +/LZ4_decompress_safe +110 fs/squashfs/lz4_wrapper.c

9c06a46f Phillip Lougher 2014-11-27 91
9c06a46f Phillip Lougher 2014-11-27 92
9c06a46f Phillip Lougher 2014-11-27 93 static int lz4_uncompress(struct squashfs_sb_info *msblk, void *strm,
9c06a46f Phillip Lougher 2014-11-27 94 struct buffer_head **bh, int b, int offset, int length,
9c06a46f Phillip Lougher 2014-11-27 95 struct squashfs_page_actor *output)
9c06a46f Phillip Lougher 2014-11-27 96 {
9c06a46f Phillip Lougher 2014-11-27 97 struct squashfs_lz4 *stream = strm;
9c06a46f Phillip Lougher 2014-11-27 98 void *buff = stream->input, *data;
9c06a46f Phillip Lougher 2014-11-27 99 int avail, i, bytes = length, res;
9c06a46f Phillip Lougher 2014-11-27 100
9c06a46f Phillip Lougher 2014-11-27 101 for (i = 0; i < b; i++) {
9c06a46f Phillip Lougher 2014-11-27 102 avail = min(bytes, msblk->devblksize - offset);
9c06a46f Phillip Lougher 2014-11-27 103 memcpy(buff, bh[i]->b_data + offset, avail);
9c06a46f Phillip Lougher 2014-11-27 104 buff += avail;
9c06a46f Phillip Lougher 2014-11-27 105 bytes -= avail;
9c06a46f Phillip Lougher 2014-11-27 106 offset = 0;
9c06a46f Phillip Lougher 2014-11-27 107 put_bh(bh[i]);
9c06a46f Phillip Lougher 2014-11-27 108 }
9c06a46f Phillip Lougher 2014-11-27 109
d21b5ff1 Sven Schmidt 2017-02-24 @110 res = LZ4_decompress_safe(stream->input, stream->output,
d21b5ff1 Sven Schmidt 2017-02-24 111 length, output->length);
d21b5ff1 Sven Schmidt 2017-02-24 112
d21b5ff1 Sven Schmidt 2017-02-24 113 if (res < 0)
9c06a46f Phillip Lougher 2014-11-27 114 return -EIO;
9c06a46f Phillip Lougher 2014-11-27 115
d21b5ff1 Sven Schmidt 2017-02-24 116 bytes = res;
9c06a46f Phillip Lougher 2014-11-27 117 data = squashfs_first_page(output);
9c06a46f Phillip Lougher 2014-11-27 118 buff = stream->output;
9c06a46f Phillip Lougher 2014-11-27 119 while (data) {
09cbfeaf Kirill A. Shutemov 2016-04-01 120 if (bytes <= PAGE_SIZE) {
9c06a46f Phillip Lougher 2014-11-27 121 memcpy(data, buff, bytes);
9c06a46f Phillip Lougher 2014-11-27 122 break;
9c06a46f Phillip Lougher 2014-11-27 123 }
09cbfeaf Kirill A. Shutemov 2016-04-01 124 memcpy(data, buff, PAGE_SIZE);
09cbfeaf Kirill A. Shutemov 2016-04-01 125 buff += PAGE_SIZE;
09cbfeaf Kirill A. Shutemov 2016-04-01 126 bytes -= PAGE_SIZE;
9c06a46f Phillip Lougher 2014-11-27 127 data = squashfs_next_page(output);
9c06a46f Phillip Lougher 2014-11-27 128 }
9c06a46f Phillip Lougher 2014-11-27 129 squashfs_finish_page(output);
9c06a46f Phillip Lougher 2014-11-27 130
d21b5ff1 Sven Schmidt 2017-02-24 131 return res;
9c06a46f Phillip Lougher 2014-11-27 132 }
9c06a46f Phillip Lougher 2014-11-27 133

:::::: The code at line 110 was first introduced by commit
:::::: d21b5ff12df45a65bb220c7e8103a5f0f5609377 fs/pstore: fs/squashfs: change usage of LZ4 to work with new LZ4 version

:::::: TO: Sven Schmidt <4sschmid@informatik.uni-hamburg.de>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 28546 bytes --]