Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp21762789ybl; Mon, 6 Jan 2020 10:43:24 -0800 (PST) X-Google-Smtp-Source: APXvYqzkTUqJ7T71lnseJR/yYK9q4k0qE3sxjoClw3HuzOFdSWwIpnQ0w6H+2vB1i07+aayB+gO6 X-Received: by 2002:a9d:6c55:: with SMTP id g21mr16687852otq.312.1578336204706; Mon, 06 Jan 2020 10:43:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578336204; cv=none; d=google.com; s=arc-20160816; b=l+5A+E77jFxGgFyAZhiGryizv7YyeZrrQPfBOtV9GNVfIYzJVUV0DWhtpolWjQr5Lv 8nvfcZgIyOgRRbQ6983jTql2k7IaV4acU9qa1x4VhMIJ9Qk4JQOLRNG0L2xB+TRfpY2H ncO5s55M+dCrQxhhpM42c1oGLarPjLbaIbiAynMJrU1J43czv/FyTmznBlNcoCLAybHX YMDcuL2trObo1B73QvfVJ3vjxTspbWRTDVrcLpxe8THRM2hmGN2pr39ognjhcYolkVi/ fLmOH7x0wKZm1xKD3phvL5RQCCQenp0GjS9G0eVTUWA5DcfimJ71z5WwlZcTeuti21+3 2/dw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=oNu1Sa9EeoaucsnveKNpOuHxjNFQiY0Ys4IvJBfUDH4=; b=MUWFi3gjaT2HHZJnHmWHmebXTjbj1/fbZOcSFogKbtC37oT3fufuO0GXIQsl+PW77W elbeCdwSXiVu6dcXGB360BbME276mdFJapHZTs8WdwwB+WAh0REMms5623tdTA2EKtj3 zPqkcPrVz5693LEdnluDaZTSocBD+f9gVsmTWPvCRAEPmI7GsO9mvs/5k2jMzKgYvfuo /vBhhZ9onmRcAwSZuo2CRDKFx22aVZvZUFuYenq4GXTCFiSy/cti06SPAt743W1WmTxj TN1AtHiV8fnZxdGZfnW+Q23dHft1S7xtf5YhPXb5kRoi/GndDrl8MnWUbM1ddqJ+B20M vVcQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q3si1106866otc.243.2020.01.06.10.43.11; Mon, 06 Jan 2020 10:43:24 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726698AbgAFSmK (ORCPT + 99 others); Mon, 6 Jan 2020 13:42:10 -0500 Received: from foss.arm.com ([217.140.110.172]:48002 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726612AbgAFSmJ (ORCPT ); Mon, 6 Jan 2020 13:42:09 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1F9EA328; Mon, 6 Jan 2020 10:42:09 -0800 (PST) Received: from [192.168.0.7] (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2161C3F534; Mon, 6 Jan 2020 10:42:08 -0800 (PST) Subject: Re: [PATCH] cpu-topology: Skip the exist but not possible cpu nodes To: Zeng Tao , sudeep.holla@arm.com Cc: linuxarm@huawei.com, Greg Kroah-Hartman , "Rafael J. Wysocki" , linux-kernel@vger.kernel.org References: <1577935489-25245-1-git-send-email-prime.zeng@hisilicon.com> From: Dietmar Eggemann Message-ID: <14a39167-5704-f406-614d-4d25b8fe8c68@arm.com> Date: Mon, 6 Jan 2020 19:42:06 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: <1577935489-25245-1-git-send-email-prime.zeng@hisilicon.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 02/01/2020 04:24, Zeng Tao wrote: > When CONFIG_NR_CPUS is smaller than the cpu nodes defined in the device > tree, the cpu node parsing will fail. And this is not reasonable for a > legal device tree configs. > In this patch, skip such cpu nodes rather than return an error. Is this extra code really necessary? Currently you get warnings indicating that CONFIG_NR_CPUS is too small so you could correct the setup issue easily. Example: Arm64 Juno board $ grep "cpu@" ./arch/arm64/boot/dts/arm/juno.dts A57_0: cpu@0 { A57_1: cpu@1 { A53_0: cpu@100 { A53_1: cpu@101 { A53_2: cpu@102 { A53_3: cpu@103 { root@juno:~# uname -r 5.5.0-rc5 root@juno:~# zcat /proc/config.gz | grep CONFIG_NR_CPUS CONFIG_NR_CPUS=4 root@juno:~# cat /proc/cpuinfo | grep ^proc processor : 0 processor : 1 processor : 2 processor : 3 root@juno:~# dmesg | grep "Unable\|Can't" [ 0.085089] Unable to find CPU node for /cpus/cpu@102 [ 0.090179] /cpus/cpu-map/cluster1/core2: Can't get CPU for leaf core [...]