Re: [PATCH] aoe: Avoid flush_scheduled_work() usage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Tetsuo,

I love your patch! Yet something to improve:

[auto build test ERROR on axboe-block/for-next]
[also build test ERROR on v5.18-rc3 next-20220414]
[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/Tetsuo-Handa/aoe-Avoid-flush_scheduled_work-usage/20220418-231118
base:   https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next
config: arc-randconfig-r023-20220419 (https://download.01.org/0day-ci/archive/20220419/202204190659.PmftNpOE-lkp@xxxxxxxxx/config)
compiler: arceb-elf-gcc (GCC) 11.2.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/b1ae05b7bd5a2a2abad4aba03f55e7f4b4599789
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Tetsuo-Handa/aoe-Avoid-flush_scheduled_work-usage/20220418-231118
        git checkout b1ae05b7bd5a2a2abad4aba03f55e7f4b4599789
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

   arceb-elf-ld: drivers/block/aoe/aoeblk.o: in function `queue_work':
>> include/linux/workqueue.h:502: undefined reference to `aoe_wq'
>> arceb-elf-ld: include/linux/workqueue.h:502: undefined reference to `aoe_wq'
   arceb-elf-ld: drivers/block/aoe/aoecmd.o: in function `queue_work':
>> include/linux/workqueue.h:502: undefined reference to `aoe_wq'
>> arceb-elf-ld: include/linux/workqueue.h:502: undefined reference to `aoe_wq'
   arceb-elf-ld: drivers/block/aoe/aoedev.o: in function `flush':
>> drivers/block/aoe/aoedev.c:324: undefined reference to `aoe_wq'
   arceb-elf-ld: drivers/block/aoe/aoedev.o:drivers/block/aoe/aoedev.c:324: more undefined references to `aoe_wq' follow


vim +502 include/linux/workqueue.h

dcd989cb73ab0f Tejun Heo    2010-06-29  475  
8425e3d5bdbe8e Tejun Heo    2013-03-13  476  /**
8425e3d5bdbe8e Tejun Heo    2013-03-13  477   * queue_work - queue work on a workqueue
8425e3d5bdbe8e Tejun Heo    2013-03-13  478   * @wq: workqueue to use
8425e3d5bdbe8e Tejun Heo    2013-03-13  479   * @work: work to queue
8425e3d5bdbe8e Tejun Heo    2013-03-13  480   *
8425e3d5bdbe8e Tejun Heo    2013-03-13  481   * Returns %false if @work was already on a queue, %true otherwise.
8425e3d5bdbe8e Tejun Heo    2013-03-13  482   *
8425e3d5bdbe8e Tejun Heo    2013-03-13  483   * We queue the work to the CPU on which it was submitted, but if the CPU dies
8425e3d5bdbe8e Tejun Heo    2013-03-13  484   * it can be processed by another CPU.
dbb92f88648d62 Andrea Parri 2020-01-22  485   *
dbb92f88648d62 Andrea Parri 2020-01-22  486   * Memory-ordering properties:  If it returns %true, guarantees that all stores
dbb92f88648d62 Andrea Parri 2020-01-22  487   * preceding the call to queue_work() in the program order will be visible from
dbb92f88648d62 Andrea Parri 2020-01-22  488   * the CPU which will execute @work by the time such work executes, e.g.,
dbb92f88648d62 Andrea Parri 2020-01-22  489   *
dbb92f88648d62 Andrea Parri 2020-01-22  490   * { x is initially 0 }
dbb92f88648d62 Andrea Parri 2020-01-22  491   *
dbb92f88648d62 Andrea Parri 2020-01-22  492   *   CPU0				CPU1
dbb92f88648d62 Andrea Parri 2020-01-22  493   *
dbb92f88648d62 Andrea Parri 2020-01-22  494   *   WRITE_ONCE(x, 1);			[ @work is being executed ]
dbb92f88648d62 Andrea Parri 2020-01-22  495   *   r0 = queue_work(wq, work);		  r1 = READ_ONCE(x);
dbb92f88648d62 Andrea Parri 2020-01-22  496   *
dbb92f88648d62 Andrea Parri 2020-01-22  497   * Forbids: r0 == true && r1 == 0
8425e3d5bdbe8e Tejun Heo    2013-03-13  498   */
8425e3d5bdbe8e Tejun Heo    2013-03-13  499  static inline bool queue_work(struct workqueue_struct *wq,
8425e3d5bdbe8e Tejun Heo    2013-03-13  500  			      struct work_struct *work)
8425e3d5bdbe8e Tejun Heo    2013-03-13  501  {
8425e3d5bdbe8e Tejun Heo    2013-03-13 @502  	return queue_work_on(WORK_CPU_UNBOUND, wq, work);
8425e3d5bdbe8e Tejun Heo    2013-03-13  503  }
8425e3d5bdbe8e Tejun Heo    2013-03-13  504  

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



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux