tree:
https://github.com/alibaba/cloud-kernel.git linux-next
head: 1d6103ae4cce545c231de9498d0e70564e7b734e
commit: 61e5885959be9af0b6942ec2a3ea0e7ccc48bf05 [11098/11168] alinux: sched: Introduce
per-cgroup idle accounting
config: x86_64-randconfig-a003-20200526 (attached as .config)
compiler: clang version 11.0.0 (
https://github.com/llvm/llvm-project
3393cc4cebf9969db94dc424b7a2b6195589c33b)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout 61e5885959be9af0b6942ec2a3ea0e7ccc48bf05
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
> kernel/cgroup/cpuset.c:1695:16: warning: stack frame size of 3280
bytes in function 'cpuset_write_resmask' [-Wframe-larger-than=]
static
ssize_t cpuset_write_resmask(struct kernfs_open_file *of,
^
1 warning generated.
kernel/cgroup/cpuset.c:2313: warning: Function parameter or member 'work' not
described in 'cpuset_hotplug_workfn'
kernel/cgroup/cpuset.c:2643: warning: Function parameter or member 'rotor' not
described in 'cpuset_spread_node'
vim +/cpuset_write_resmask +1695 kernel/cgroup/cpuset.c
5be7a4792a31df6 kernel/cpuset.c Paul Menage 2008-05-06 1691
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1692 /*
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1693 * Common handling for a
write to a "cpus" or "mems" file.
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1694 */
451af504df0c62f kernel/cpuset.c Tejun Heo 2014-05-13 @1695 static ssize_t
cpuset_write_resmask(struct kernfs_open_file *of,
451af504df0c62f kernel/cpuset.c Tejun Heo 2014-05-13 1696 char *buf, size_t
nbytes, loff_t off)
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1697 {
451af504df0c62f kernel/cpuset.c Tejun Heo 2014-05-13 1698 struct cpuset *cs =
css_cs(of_css(of));
645fcc9d2f6946f kernel/cpuset.c Li Zefan 2009-01-07 1699 struct cpuset *trialcs;
5d21cc2db040d01 kernel/cpuset.c Tejun Heo 2013-01-07 1700 int retval = -ENODEV;
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1701
451af504df0c62f kernel/cpuset.c Tejun Heo 2014-05-13 1702 buf = strstrip(buf);
451af504df0c62f kernel/cpuset.c Tejun Heo 2014-05-13 1703
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1704 /*
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1705 * CPU or memory hotunplug
may leave @cs w/o any execution
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1706 * resources, in which case
the hotplug code asynchronously updates
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1707 * configuration and
transfers all tasks to the nearest ancestor
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1708 * which can execute.
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1709 *
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1710 * As writes to
"cpus" or "mems" may restore @cs's execution
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1711 * resources, wait for the
previously scheduled operations before
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1712 * proceeding, so that we
don't end up keep removing tasks added
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1713 * after execution
capability is restored.
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1714 *
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1715 * cpuset_hotplug_work
calls back into cgroup core via
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1716 * cgroup_transfer_tasks()
and waiting for it from a cgroupfs
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1717 * operation like this one
can lead to a deadlock through kernfs
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1718 * active_ref protection.
Let's break the protection. Losing the
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1719 * protection is okay as we
check whether @cs is online after
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1720 * grabbing cpuset_mutex
anyway. This only happens on the legacy
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1721 * hierarchies.
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1722 */
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1723 css_get(&cs->css);
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1724
kernfs_break_active_protection(of->kn);
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1725
flush_work(&cpuset_hotplug_work);
3a5a6d0c2b0391e kernel/cpuset.c Tejun Heo 2013-01-07 1726
5d21cc2db040d01 kernel/cpuset.c Tejun Heo 2013-01-07 1727
mutex_lock(&cpuset_mutex);
5d21cc2db040d01 kernel/cpuset.c Tejun Heo 2013-01-07 1728 if (!is_cpuset_online(cs))
5d21cc2db040d01 kernel/cpuset.c Tejun Heo 2013-01-07 1729 goto out_unlock;
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1730
645fcc9d2f6946f kernel/cpuset.c Li Zefan 2009-01-07 1731 trialcs =
alloc_trial_cpuset(cs);
b75f38d659e6fc7 kernel/cpuset.c Li Zefan 2011-03-04 1732 if (!trialcs) {
b75f38d659e6fc7 kernel/cpuset.c Li Zefan 2011-03-04 1733 retval = -ENOMEM;
5d21cc2db040d01 kernel/cpuset.c Tejun Heo 2013-01-07 1734 goto out_unlock;
b75f38d659e6fc7 kernel/cpuset.c Li Zefan 2011-03-04 1735 }
645fcc9d2f6946f kernel/cpuset.c Li Zefan 2009-01-07 1736
451af504df0c62f kernel/cpuset.c Tejun Heo 2014-05-13 1737 switch
(of_cft(of)->private) {
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1738 case FILE_CPULIST:
645fcc9d2f6946f kernel/cpuset.c Li Zefan 2009-01-07 1739 retval =
update_cpumask(cs, trialcs, buf);
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1740 break;
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1741 case FILE_MEMLIST:
645fcc9d2f6946f kernel/cpuset.c Li Zefan 2009-01-07 1742 retval =
update_nodemask(cs, trialcs, buf);
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1743 break;
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1744 default:
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1745 retval = -EINVAL;
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1746 break;
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1747 }
645fcc9d2f6946f kernel/cpuset.c Li Zefan 2009-01-07 1748
645fcc9d2f6946f kernel/cpuset.c Li Zefan 2009-01-07 1749
free_trial_cpuset(trialcs);
5d21cc2db040d01 kernel/cpuset.c Tejun Heo 2013-01-07 1750 out_unlock:
5d21cc2db040d01 kernel/cpuset.c Tejun Heo 2013-01-07 1751
mutex_unlock(&cpuset_mutex);
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1752
kernfs_unbreak_active_protection(of->kn);
76bb5ab8f6e3e7b kernel/cpuset.c Tejun Heo 2014-06-30 1753 css_put(&cs->css);
e93ad19d0564839 kernel/cpuset.c Tejun Heo 2016-01-19 1754
flush_workqueue(cpuset_migrate_mm_wq);
451af504df0c62f kernel/cpuset.c Tejun Heo 2014-05-13 1755 return retval ?: nbytes;
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1756 }
e37123953292146 kernel/cpuset.c Paul Menage 2008-07-25 1757
:::::: The code at line 1695 was first introduced by commit
:::::: 451af504df0c62f695a69b83c250486e77c66378 cgroup: replace cftype->write_string()
with cftype->write()
:::::: TO: Tejun Heo <tj(a)kernel.org>
:::::: CC: Tejun Heo <tj(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org