Received: by 2002:a05:6a10:9e8c:0:0:0:0 with SMTP id y12csp515460pxx; Mon, 26 Oct 2020 13:58:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx8b/pqILGa08A+UYy4UYoxqyr9nDu57LyIs1Hso/CKb8eXL7FcEgtzOiRslqyv5DjphM6v X-Received: by 2002:a17:906:da03:: with SMTP id fi3mr15743964ejb.321.1603745938261; Mon, 26 Oct 2020 13:58:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603745938; cv=none; d=google.com; s=arc-20160816; b=c7kKjAcIV6YjKypry80xAEmDEQ9oi0BxPBsE32VzLHkRD/4IyctQSB5BJegT0f7+EW sMpM8Pr2jzXjJ6qViR4kcS+asiyKeZVVAPzR3cHbqzUSWgaLANh7yl67BX/r9IDHWfgZ Oew8ojmTaSgRenESOQCNKCGXO5m61xDosLe8WBaX55fLrY5oTKMcFoVq2JHpvEdQFcXV 1i+MTDoX0TnGVNHsLgf1aspFHqnyC5FxA67MNHoIoX+6Kjtxg0SXYS/lubBV+t9/sNeu aKUQtwBFDUuhyCR90oAnKvfAeBkA2Gb9XDhmOL6kz4cwiH+AEHbMEaWDVU6opEMqPYUi HrYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=1hSHAusvdVr0nzunhOni1KRhhELcF3VmABc+orJ796g=; b=mJaTw25uLCBMkoV2U7CH3FTBY4j2MMETtKsMClCmvhTniargOtjfLUxCrI26Xrd+e7 fvsf3gYZ8Y769zJY2B21pEaUk3YpWLRmJFRd653Q+bokW26xeHv70FB+e665dytg5vQz 2FBvvO1dZr7fbnVRn+1fPW6gB4JaZNM+cX4k+8iY/ZDwR6BJDoNwuXoB9SXwfaTjq82q ZUrbFpmQKDsc4i2PjBlxQ9r109yhOmtDHZIjcuxzd9hYOtNkfoQHfsDYF+eeuxAl7NRD 65zjFltcEc5l6SjWfMRy2l9QM06mOugfNrt40wWSqUM5ad9TTBdgjDAlHkgbGw0HyhEL sVrg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Uf7jR+yF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ca1si7815087edb.162.2020.10.26.13.58.33; Mon, 26 Oct 2020 13:58:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Uf7jR+yF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1784746AbgJZQEX (ORCPT + 99 others); Mon, 26 Oct 2020 12:04:23 -0400 Received: from mail.kernel.org ([198.145.29.99]:49726 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1784726AbgJZQEL (ORCPT ); Mon, 26 Oct 2020 12:04:11 -0400 Received: from localhost.localdomain (unknown [192.30.34.233]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9C5DD22404; Mon, 26 Oct 2020 16:04:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1603728251; bh=HlB1zaoFuRMGCdaDNNAZvzmGOoVHmTnVBcWp1V7NiQQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Uf7jR+yFfikMs/73GGwsZJlpMz/OwaIUKlrvw5M0KFy+6NcKYoeWr6KDEvsXtAtBg QKEjMIuuRrIu4G3aBddBkMSqM1sddejT7P+K91o23SYaecfZDQ65rx8gY0+p5mHkR/ Ch2LvANUf/p2ibniBqi4WULEetd+6bjNnHSD8AkI= From: Arnd Bergmann To: Catalin Marinas , Will Deacon Cc: Arnd Bergmann , Mark Rutland , Will Deacon , Marc Zyngier , James Morse , Anshuman Khandual , Suzuki K Poulose , "Gustavo A. R. Silva" , Vincenzo Frascino , Steven Price , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/4] arm64: avoid -Woverride-init warning Date: Mon, 26 Oct 2020 17:03:30 +0100 Message-Id: <20201026160342.3705327-3-arnd@kernel.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20201026160342.3705327-1-arnd@kernel.org> References: <20201026160342.3705327-1-arnd@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Arnd Bergmann The icache_policy_str[] definition causes a warning when extra warning flags are enabled: arch/arm64/kernel/cpuinfo.c:38:26: warning: initialized field overwritten [-Woverride-init] 38 | [ICACHE_POLICY_VIPT] = "VIPT", | ^~~~~~ arch/arm64/kernel/cpuinfo.c:38:26: note: (near initialization for 'icache_policy_str[2]') arch/arm64/kernel/cpuinfo.c:39:26: warning: initialized field overwritten [-Woverride-init] 39 | [ICACHE_POLICY_PIPT] = "PIPT", | ^~~~~~ arch/arm64/kernel/cpuinfo.c:39:26: note: (near initialization for 'icache_policy_str[3]') arch/arm64/kernel/cpuinfo.c:40:27: warning: initialized field overwritten [-Woverride-init] 40 | [ICACHE_POLICY_VPIPT] = "VPIPT", | ^~~~~~~ arch/arm64/kernel/cpuinfo.c:40:27: note: (near initialization for 'icache_policy_str[0]') There is no real need for the default initializer here, as printing a NULL string is harmless. Rewrite the logic to have an explicit reserved value for the only one that uses the default value. This partially reverts the commit that removed ICACHE_POLICY_AIVIVT. Fixes: 155433cb365e ("arm64: cache: Remove support for ASID-tagged VIVT I-caches") Signed-off-by: Arnd Bergmann --- arch/arm64/include/asm/cache.h | 1 + arch/arm64/kernel/cpuinfo.c | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/arm64/include/asm/cache.h b/arch/arm64/include/asm/cache.h index a4d1b5f771f6..16e1e16e7e61 100644 --- a/arch/arm64/include/asm/cache.h +++ b/arch/arm64/include/asm/cache.h @@ -24,6 +24,7 @@ #define CTR_L1IP(ctr) (((ctr) >> CTR_L1IP_SHIFT) & CTR_L1IP_MASK) #define ICACHE_POLICY_VPIPT 0 +#define ICACHE_POLICY_RESERVED 1 #define ICACHE_POLICY_VIPT 2 #define ICACHE_POLICY_PIPT 3 diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c index 6a7bb3729d60..b63269c7fcdb 100644 --- a/arch/arm64/kernel/cpuinfo.c +++ b/arch/arm64/kernel/cpuinfo.c @@ -34,10 +34,10 @@ DEFINE_PER_CPU(struct cpuinfo_arm64, cpu_data); static struct cpuinfo_arm64 boot_cpu_data; static const char *icache_policy_str[] = { - [0 ... ICACHE_POLICY_PIPT] = "RESERVED/UNKNOWN", + [ICACHE_POLICY_VPIPT] = "VPIPT", + [ICACHE_POLICY_RESERVED] = "RESERVED/UNKNOWN", [ICACHE_POLICY_VIPT] = "VIPT", [ICACHE_POLICY_PIPT] = "PIPT", - [ICACHE_POLICY_VPIPT] = "VPIPT", }; unsigned long __icache_flags; @@ -335,6 +335,7 @@ static void cpuinfo_detect_icache_policy(struct cpuinfo_arm64 *info) set_bit(ICACHEF_VPIPT, &__icache_flags); break; default: + case ICACHE_POLICY_RESERVED: case ICACHE_POLICY_VIPT: /* Assume aliasing */ set_bit(ICACHEF_ALIASING, &__icache_flags); -- 2.27.0