From: Yicong Yang <yangyicong@huawei.com>
To: kernel test robot <yujie.liu@intel.com>,
<catalin.marinas@arm.com>, <will@kernel.org>,
<sudeep.holla@arm.com>, <linux-arm-kernel@lists.infradead.org>
Cc: <yangyicong@hisilicon.com>, <oe-kbuild-all@lists.linux.dev>,
<dietmar.eggemann@arm.com>, <gregkh@linuxfoundation.org>,
<rafael@kernel.org>, <jonathan.cameron@huawei.com>,
<prime.zeng@hisilicon.com>, <linuxarm@huawei.com>,
<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 4/4] arm64: Kconfig: Enable HOTPLUG_SMT
Date: Mon, 20 Nov 2023 11:27:41 +0800 [thread overview]
Message-ID: <d2454857-009c-ffd3-26fa-a77853f5622d@huawei.com> (raw)
In-Reply-To: <202311151900.K9xc6Xqz-lkp@intel.com>
On 2023/11/16 12:59, kernel test robot wrote:
> Hi Yicong,
>
> kernel test robot noticed the following build errors:
>
> [auto build test ERROR on arm64/for-next/core]
> [also build test ERROR on driver-core/driver-core-testing driver-core/driver-core-next driver-core/driver-core-linus arm/for-next kvmarm/next soc/for-next linus/master arm/fixes v6.7-rc1 next-20231115]
> [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#_base_tree_information]
>
> url: https://github.com/intel-lab-lkp/linux/commits/Yicong-Yang/arch_topology-Support-basic-SMT-control-for-the-driver/20231114-120544
> base: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core
> patch link: https://lore.kernel.org/r/20231114040110.54590-5-yangyicong%40huawei.com
> patch subject: [PATCH v3 4/4] arm64: Kconfig: Enable HOTPLUG_SMT
> config: arm64-randconfig-002-20231115 (https://download.01.org/0day-ci/archive/20231115/202311151900.K9xc6Xqz-lkp@intel.com/config)
> compiler: aarch64-linux-gcc (GCC) 13.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231115/202311151900.K9xc6Xqz-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <yujie.liu@intel.com>
> | Closes: https://lore.kernel.org/r/202311151900.K9xc6Xqz-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> kernel/cpu.c: In function 'cpuhp_smt_disable':
>>> kernel/cpu.c:2687:23: error: implicit declaration of function 'cpu_down_maps_locked' [-Werror=implicit-function-declaration]
> 2687 | ret = cpu_down_maps_locked(cpu, CPUHP_OFFLINE);
> | ^~~~~~~~~~~~~~~~~~~~
> cc1: some warnings being treated as errors
>
cpu_down_maps_locked() is introduced by CONFIG_HOTPLUG_CPU, so CONFIG_HOTPLUG_SMT will need to depend
on CONFIG_HOTPLUG_CPU. Will add it.
>
> vim +/cpu_down_maps_locked +2687 kernel/cpu.c
>
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2672
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2673 int cpuhp_smt_disable(enum cpuhp_smt_control ctrlval)
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2674 {
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2675 int cpu, ret = 0;
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2676
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2677 cpu_maps_update_begin();
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2678 for_each_online_cpu(cpu) {
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2679 if (topology_is_primary_thread(cpu))
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2680 continue;
> 38253464bc821d Michael Ellerman 2023-07-05 2681 /*
> 38253464bc821d Michael Ellerman 2023-07-05 2682 * Disable can be called with CPU_SMT_ENABLED when changing
> 38253464bc821d Michael Ellerman 2023-07-05 2683 * from a higher to lower number of SMT threads per core.
> 38253464bc821d Michael Ellerman 2023-07-05 2684 */
> 38253464bc821d Michael Ellerman 2023-07-05 2685 if (ctrlval == CPU_SMT_ENABLED && cpu_smt_thread_allowed(cpu))
> 38253464bc821d Michael Ellerman 2023-07-05 2686 continue;
> dc8d37ed304eee Arnd Bergmann 2019-12-10 @2687 ret = cpu_down_maps_locked(cpu, CPUHP_OFFLINE);
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2688 if (ret)
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2689 break;
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2690 /*
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2691 * As this needs to hold the cpu maps lock it's impossible
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2692 * to call device_offline() because that ends up calling
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2693 * cpu_down() which takes cpu maps lock. cpu maps lock
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2694 * needs to be held as this might race against in kernel
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2695 * abusers of the hotplug machinery (thermal management).
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2696 *
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2697 * So nothing would update device:offline state. That would
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2698 * leave the sysfs entry stale and prevent onlining after
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2699 * smt control has been changed to 'off' again. This is
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2700 * called under the sysfs hotplug lock, so it is properly
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2701 * serialized against the regular offline usage.
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2702 */
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2703 cpuhp_offline_cpu_device(cpu);
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2704 }
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2705 if (!ret)
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2706 cpu_smt_control = ctrlval;
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2707 cpu_maps_update_done();
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2708 return ret;
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2709 }
> dc8d37ed304eee Arnd Bergmann 2019-12-10 2710
>
prev parent reply other threads:[~2023-11-20 3:27 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-14 4:01 [PATCH v3 0/4] Support SMT control on arm64 Yicong Yang
2023-11-14 4:01 ` [PATCH v3 1/4] arch_topology: Support basic SMT control for the driver Yicong Yang
2023-11-14 13:42 ` kernel test robot
2023-11-15 15:23 ` kernel test robot
2023-11-20 3:29 ` Yicong Yang
2023-11-14 4:01 ` [PATCH v3 2/4] arch_topology: Support SMT control for OF based system Yicong Yang
2023-11-14 4:01 ` [PATCH v3 3/4] arm64: topology: Support SMT control on ACPI " Yicong Yang
2023-11-14 4:01 ` [PATCH v3 4/4] arm64: Kconfig: Enable HOTPLUG_SMT Yicong Yang
2023-11-16 4:59 ` kernel test robot
2023-11-20 3:27 ` Yicong Yang [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d2454857-009c-ffd3-26fa-a77853f5622d@huawei.com \
--to=yangyicong@huawei.com \
--cc=catalin.marinas@arm.com \
--cc=dietmar.eggemann@arm.com \
--cc=gregkh@linuxfoundation.org \
--cc=jonathan.cameron@huawei.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=prime.zeng@hisilicon.com \
--cc=rafael@kernel.org \
--cc=sudeep.holla@arm.com \
--cc=will@kernel.org \
--cc=yangyicong@hisilicon.com \
--cc=yujie.liu@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®