[PATCH] panic, kexec: Don't mutex_trylock() in __crash_kexec()

kernel test robot lkp at intel.com
Wed Jun 22 08:34:47 PDT 2022


Hi Valentin,

I love your patch! Yet something to improve:

[auto build test ERROR on soc/for-next]
[also build test ERROR on linus/master v5.19-rc3 next-20220622]
[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/intel-lab-lkp/linux/commits/Valentin-Schneider/panic-kexec-Don-t-mutex_trylock-in-__crash_kexec/20220616-203915
base:   https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git for-next
config: riscv-randconfig-c024-20220622 (https://download.01.org/0day-ci/archive/20220622/202206222322.WsTIFQGo-lkp@intel.com/config)
compiler: riscv64-linux-gcc (GCC) 11.3.0
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
        # https://github.com/intel-lab-lkp/linux/commit/d05873bf87d81eb3ddfa1fe20b3743cc4a1ab259
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Valentin-Schneider/panic-kexec-Don-t-mutex_trylock-in-__crash_kexec/20220616-203915
        git checkout d05873bf87d81eb3ddfa1fe20b3743cc4a1ab259
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp at intel.com>

All errors (new ones prefixed by >>):

   riscv64-linux-ld: kernel/kexec_core.o: in function `kimage_crash_copy_vmcoreinfo':
   kernel/kexec_core.c:502: undefined reference to `machine_kexec_cleanup'
   riscv64-linux-ld: kernel/kexec_core.o: in function `clear_bit':
>> arch/riscv/include/asm/bitops.h:129: undefined reference to `machine_crash_shutdown'
   riscv64-linux-ld: kernel/kexec_core.o: in function `kimage_free_pages':
   kernel/kexec_core.c:337: undefined reference to `machine_kexec'
   riscv64-linux-ld: kernel/kexec_core.o: in function `kimage_free':
   kernel/kexec_core.c:651: undefined reference to `riscv_crash_save_regs'
   riscv64-linux-ld: kernel/kexec_core.o: in function `__nr_to_section':
   include/linux/mmzone.h:1403: undefined reference to `machine_shutdown'
   riscv64-linux-ld: include/linux/mmzone.h:1403: undefined reference to `machine_kexec'
   riscv64-linux-ld: kernel/kexec_file.o: in function `__section_mem_map_addr':
   include/linux/mmzone.h:1434: undefined reference to `machine_kexec_prepare'


vim +129 arch/riscv/include/asm/bitops.h

fab957c11efe2f Palmer Dabbelt 2017-07-10  117  
fab957c11efe2f Palmer Dabbelt 2017-07-10  118  /**
fab957c11efe2f Palmer Dabbelt 2017-07-10  119   * clear_bit - Clears a bit in memory
fab957c11efe2f Palmer Dabbelt 2017-07-10  120   * @nr: Bit to clear
fab957c11efe2f Palmer Dabbelt 2017-07-10  121   * @addr: Address to start counting from
fab957c11efe2f Palmer Dabbelt 2017-07-10  122   *
fab957c11efe2f Palmer Dabbelt 2017-07-10  123   * Note: there are no guarantees that this function will not be reordered
fab957c11efe2f Palmer Dabbelt 2017-07-10  124   * on non x86 architectures, so if you are writing portable code,
fab957c11efe2f Palmer Dabbelt 2017-07-10  125   * make sure not to rely on its reordering guarantees.
fab957c11efe2f Palmer Dabbelt 2017-07-10  126   */
fab957c11efe2f Palmer Dabbelt 2017-07-10  127  static inline void clear_bit(int nr, volatile unsigned long *addr)
fab957c11efe2f Palmer Dabbelt 2017-07-10  128  {
fab957c11efe2f Palmer Dabbelt 2017-07-10 @129  	__op_bit(and, __NOT, nr, addr);
fab957c11efe2f Palmer Dabbelt 2017-07-10  130  }
fab957c11efe2f Palmer Dabbelt 2017-07-10  131  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp



More information about the kexec mailing list