arch/powerpc/boot/decompress.c:133: undefined reference to `__decompress'
From: kbuild test robot
Date: Tue Jun 02 2020 - 22:31:21 EST
Hi Nathan,
It's probably a bug fix that unveils the link errors.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: d9afbb3509900a953f5cf90bc57e793ee80c1108
commit: 5990cdee689c6885b27c6d969a3d58b09002b0bc lib/mpi: Fix building for powerpc with clang
date: 6 weeks ago
config: powerpc-randconfig-r032-20200602 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 2388a096e7865c043e83ece4e26654bd3d1a20d5)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install powerpc cross compiling tool for clang build
# apt-get install binutils-powerpc-linux-gnu
git checkout 5990cdee689c6885b27c6d969a3d58b09002b0bc
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@xxxxxxxxx>
All errors (new ones prefixed by >>, old ones prefixed by <<):
powerpc-linux-gnu-ld: arch/powerpc/boot/wrapper.a(decompress.o): in function `partial_decompress':
>> arch/powerpc/boot/decompress.c:133: undefined reference to `__decompress'
vim +133 arch/powerpc/boot/decompress.c
1b7898ee276b39 Oliver O'Halloran 2016-09-22 98
1b7898ee276b39 Oliver O'Halloran 2016-09-22 99 /**
1b7898ee276b39 Oliver O'Halloran 2016-09-22 100 * partial_decompress - decompresses part or all of a compressed buffer
1b7898ee276b39 Oliver O'Halloran 2016-09-22 101 * @inbuf: input buffer
1b7898ee276b39 Oliver O'Halloran 2016-09-22 102 * @input_size: length of the input buffer
1b7898ee276b39 Oliver O'Halloran 2016-09-22 103 * @outbuf: input buffer
1b7898ee276b39 Oliver O'Halloran 2016-09-22 104 * @output_size: length of the input buffer
1b7898ee276b39 Oliver O'Halloran 2016-09-22 105 * @skip number of output bytes to ignore
1b7898ee276b39 Oliver O'Halloran 2016-09-22 106 *
1b7898ee276b39 Oliver O'Halloran 2016-09-22 107 * This function takes compressed data from inbuf, decompresses and write it to
1b7898ee276b39 Oliver O'Halloran 2016-09-22 108 * outbuf. Once output_size bytes are written to the output buffer, or the
1b7898ee276b39 Oliver O'Halloran 2016-09-22 109 * stream is exhausted the function will return the number of bytes that were
1b7898ee276b39 Oliver O'Halloran 2016-09-22 110 * decompressed. Otherwise it will return whatever error code the decompressor
1b7898ee276b39 Oliver O'Halloran 2016-09-22 111 * reported (NB: This is specific to each decompressor type).
1b7898ee276b39 Oliver O'Halloran 2016-09-22 112 *
1b7898ee276b39 Oliver O'Halloran 2016-09-22 113 * The skip functionality is mainly there so the program and discover
1b7898ee276b39 Oliver O'Halloran 2016-09-22 114 * the size of the compressed image so that it can ask firmware (if present)
1b7898ee276b39 Oliver O'Halloran 2016-09-22 115 * for an appropriately sized buffer.
1b7898ee276b39 Oliver O'Halloran 2016-09-22 116 */
1b7898ee276b39 Oliver O'Halloran 2016-09-22 117 long partial_decompress(void *inbuf, unsigned long input_size,
1b7898ee276b39 Oliver O'Halloran 2016-09-22 118 void *outbuf, unsigned long output_size, unsigned long _skip)
1b7898ee276b39 Oliver O'Halloran 2016-09-22 119 {
1b7898ee276b39 Oliver O'Halloran 2016-09-22 120 int ret;
1b7898ee276b39 Oliver O'Halloran 2016-09-22 121
1b7898ee276b39 Oliver O'Halloran 2016-09-22 122 /*
1b7898ee276b39 Oliver O'Halloran 2016-09-22 123 * The skipped bytes needs to be included in the size of data we want
1b7898ee276b39 Oliver O'Halloran 2016-09-22 124 * to decompress.
1b7898ee276b39 Oliver O'Halloran 2016-09-22 125 */
1b7898ee276b39 Oliver O'Halloran 2016-09-22 126 output_size += _skip;
1b7898ee276b39 Oliver O'Halloran 2016-09-22 127
1b7898ee276b39 Oliver O'Halloran 2016-09-22 128 decompressed_bytes = 0;
1b7898ee276b39 Oliver O'Halloran 2016-09-22 129 output_buffer = outbuf;
1b7898ee276b39 Oliver O'Halloran 2016-09-22 130 limit = output_size;
1b7898ee276b39 Oliver O'Halloran 2016-09-22 131 skip = _skip;
1b7898ee276b39 Oliver O'Halloran 2016-09-22 132
1b7898ee276b39 Oliver O'Halloran 2016-09-22 @133 ret = __decompress(inbuf, input_size, NULL, flush, outbuf,
:::::: The code at line 133 was first introduced by commit
:::::: 1b7898ee276b39e54d870dc4ef3374f663d0b426 powerpc/boot: Use the pre-boot decompression API
:::::: TO: Oliver O'Halloran <oohall@xxxxxxxxx>
:::::: CC: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip