tree:
https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.4
head: 1123067dc719936562185c467f41f1f48591153e
commit: 472ccc367ebf8b832dbcb7a89a33facf42b3bfeb [75/83] BACKPORT: io-wq: add support for
bounded vs unbunded work
config: i386-randconfig-m021-20210214 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
smatch warnings:
fs/io-wq.c:320 __io_worker_busy() warn: inconsistent indenting
vim +320 fs/io-wq.c
297
298 /*
299 * Worker will start processing some work. Move it to the busy list, if
300 * it's currently on the freelist
301 */
302 static void __io_worker_busy(struct io_wqe *wqe, struct io_worker *worker,
303 struct io_wq_work *work)
304 __must_hold(wqe->lock)
305 {
306 bool worker_bound, work_bound;
307
308 if (worker->flags & IO_WORKER_F_FREE) {
309 worker->flags &= ~IO_WORKER_F_FREE;
310 hlist_nulls_del_init_rcu(&worker->nulls_node);
311 hlist_nulls_add_head_rcu(&worker->nulls_node,
312 &wqe->busy_list.head);
313 }
314 worker->cur_work = work;
315
316 /*
317 * If worker is moving from bound to unbound (or vice versa), then
318 * ensure we update the running accounting.
319 */
320 worker_bound = (worker->flags & IO_WORKER_F_BOUND) != 0;
321 work_bound = (work->flags & IO_WQ_WORK_UNBOUND) == 0;
322 if (worker_bound != work_bound) {
323 io_wqe_dec_running(wqe, worker);
324 if (work_bound) {
325 worker->flags |= IO_WORKER_F_BOUND;
326 wqe->acct[IO_WQ_ACCT_UNBOUND].nr_workers--;
327 wqe->acct[IO_WQ_ACCT_BOUND].nr_workers++;
328 atomic_dec(&wqe->wq->user->processes);
329 } else {
330 worker->flags &= ~IO_WORKER_F_BOUND;
331 wqe->acct[IO_WQ_ACCT_UNBOUND].nr_workers++;
332 wqe->acct[IO_WQ_ACCT_BOUND].nr_workers--;
333 atomic_inc(&wqe->wq->user->processes);
334 }
335 io_wqe_inc_running(wqe, worker);
336 }
337 }
338
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org