[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202110310349.IZUnlhEJ-lkp@intel.com>
Date: Sun, 31 Oct 2021 03:47:57 +0800
From: kernel test robot <lkp@...el.com>
To: Christoph Hellwig <hch@....de>
Cc: llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
linux-kernel@...r.kernel.org, Jens Axboe <axboe@...nel.dk>
Subject: [axboe-block:for-5.16/block 136/175] kernel/sched/core.c:6346:23:
error: no member named 'plug' in 'struct task_struct'
tree: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-5.16/block
head: ef1661ba6d2e9c8eecd13ee04067bdcc59f7aac6
commit: 008f75a20e7072d0840ec323c39b42206f3fa8a0 [136/175] block: cleanup the flush plug helpers
config: arm-randconfig-c002-20211028 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d321548c3ce987f4f21350ba1c81fdb5d4354224)
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 arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git/commit/?id=008f75a20e7072d0840ec323c39b42206f3fa8a0
git remote add axboe-block https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
git fetch --no-tags axboe-block for-5.16/block
git checkout 008f75a20e7072d0840ec323c39b42206f3fa8a0
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
Note: the axboe-block/for-5.16/block HEAD ef1661ba6d2e9c8eecd13ee04067bdcc59f7aac6 builds fine.
It only hurts bisectability.
All errors (new ones prefixed by >>):
kernel/sched/core.c:3482:13: warning: variable 'rq' set but not used [-Wunused-but-set-variable]
struct rq *rq;
^
>> kernel/sched/core.c:6346:23: error: no member named 'plug' in 'struct task_struct'
blk_flush_plug(tsk->plug, true);
~~~ ^
kernel/sched/core.c:6399:35: warning: no previous prototype for function 'schedule_user' [-Wmissing-prototypes]
asmlinkage __visible void __sched schedule_user(void)
^
kernel/sched/core.c:6399:22: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage __visible void __sched schedule_user(void)
^
static
kernel/sched/core.c:8357:15: error: no member named 'plug' in 'struct task_struct'
if (current->plug)
~~~~~~~ ^
kernel/sched/core.c:8358:27: error: no member named 'plug' in 'struct task_struct'
blk_flush_plug(current->plug, true);
~~~~~~~ ^
2 warnings and 3 errors generated.
--
>> fs/fs-writeback.c:1896:17: error: no member named 'plug' in 'struct task_struct'
if (current->plug)
~~~~~~~ ^
fs/fs-writeback.c:1897:29: error: no member named 'plug' in 'struct task_struct'
blk_flush_plug(current->plug, false);
~~~~~~~ ^
fs/fs-writeback.c:2295:27: error: no member named 'plug' in 'struct task_struct'
blk_flush_plug(current->plug, true);
~~~~~~~ ^
3 errors generated.
vim +6346 kernel/sched/core.c
6312
6313 static inline void sched_submit_work(struct task_struct *tsk)
6314 {
6315 unsigned int task_flags;
6316
6317 if (task_is_running(tsk))
6318 return;
6319
6320 task_flags = tsk->flags;
6321 /*
6322 * If a worker went to sleep, notify and ask workqueue whether
6323 * it wants to wake up a task to maintain concurrency.
6324 * As this function is called inside the schedule() context,
6325 * we disable preemption to avoid it calling schedule() again
6326 * in the possible wakeup of a kworker and because wq_worker_sleeping()
6327 * requires it.
6328 */
6329 if (task_flags & (PF_WQ_WORKER | PF_IO_WORKER)) {
6330 preempt_disable();
6331 if (task_flags & PF_WQ_WORKER)
6332 wq_worker_sleeping(tsk);
6333 else
6334 io_wq_worker_sleeping(tsk);
6335 preempt_enable_no_resched();
6336 }
6337
6338 if (tsk_is_pi_blocked(tsk))
6339 return;
6340
6341 /*
6342 * If we are going to sleep and we have plugged IO queued,
6343 * make sure to submit it to avoid deadlocks.
6344 */
6345 if (blk_needs_flush_plug(tsk))
> 6346 blk_flush_plug(tsk->plug, true);
6347 }
6348
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Download attachment ".config.gz" of type "application/gzip" (29789 bytes)
Powered by blists - more mailing lists