[dm-devel] [PATCH] block: Make rescuer threads per request_queue, not per bioset

kbuild test robot lkp at intel.com
Wed Feb 8 06:23:00 UTC 2017


Hi Kent,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.10-rc7]
[cannot apply to next-20170207]
[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/Kent-Overstreet/block-Make-rescuer-threads-per-request_queue-not-per-bioset/20170208-130414
config: x86_64-randconfig-x017-201706 (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=x86_64 

All warnings (new ones prefixed by >>):

   In file included from include/uapi/linux/stddef.h:1:0,
                    from include/linux/stddef.h:4,
                    from include/uapi/linux/posix_types.h:4,
                    from include/uapi/linux/types.h:13,
                    from include/linux/types.h:5,
                    from include/uapi/linux/capability.h:16,
                    from include/linux/capability.h:15,
                    from include/linux/sched.h:15,
                    from include/linux/kasan.h:4,
                    from kernel/sched/core.c:29:
   kernel/sched/core.c: In function 'sched_submit_work':
   kernel/sched/core.c:3445:7: error: implicit declaration of function 'bio_list_empty' [-Werror=implicit-function-declaration]
         !bio_list_empty(&tsk->bio_list->bios) &&
          ^
   include/linux/compiler.h:149:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
>> kernel/sched/core.c:3444:2: note: in expansion of macro 'if'
     if (tsk->bio_list &&
     ^~
   kernel/sched/core.c:3445:36: error: dereferencing pointer to incomplete type 'struct bio_plug_list'
         !bio_list_empty(&tsk->bio_list->bios) &&
                                       ^
   include/linux/compiler.h:149:30: note: in definition of macro '__trace_if'
     if (__builtin_constant_p(!!(cond)) ? !!(cond) :   \
                                 ^~~~
>> kernel/sched/core.c:3444:2: note: in expansion of macro 'if'
     if (tsk->bio_list &&
     ^~
   kernel/sched/core.c:3447:3: error: implicit declaration of function 'blk_punt_blocked_bios' [-Werror=implicit-function-declaration]
      blk_punt_blocked_bios(tsk->bio_list);
      ^~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +/if +3444 kernel/sched/core.c

  3428	
  3429		/* causes final put_task_struct in finish_task_switch(). */
  3430		__set_current_state(TASK_DEAD);
  3431		current->flags |= PF_NOFREEZE;	/* tell freezer to ignore us */
  3432		__schedule(false);
  3433		BUG();
  3434		/* Avoid "noreturn function does return".  */
  3435		for (;;)
  3436			cpu_relax();	/* For when BUG is null */
  3437	}
  3438	
  3439	static inline void sched_submit_work(struct task_struct *tsk)
  3440	{
  3441		if (!tsk->state || tsk_is_pi_blocked(tsk))
  3442			return;
  3443	
> 3444		if (tsk->bio_list &&
  3445		    !bio_list_empty(&tsk->bio_list->bios) &&
  3446		    tsk->bio_list->q->rescue_workqueue)
  3447			blk_punt_blocked_bios(tsk->bio_list);
  3448	
  3449		/*
  3450		 * If we are going to sleep and we have plugged IO queued,
  3451		 * make sure to submit it to avoid deadlocks.
  3452		 */

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 23909 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/dm-devel/attachments/20170208/a0d53cc7/attachment.gz>


More information about the dm-devel mailing list