Received: by 2002:a25:ca44:0:0:0:0:0 with SMTP id a65csp1131154ybg; Wed, 29 Jul 2020 06:40:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw2AW6c3mMRN9u9QVgt/nMgLGyMjH5f23CbSnaFJESAKdLEp9ofWM3hLEtIz11/9Eh2ybyv X-Received: by 2002:a17:906:1104:: with SMTP id h4mr21267293eja.456.1596030002360; Wed, 29 Jul 2020 06:40:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1596030002; cv=none; d=google.com; s=arc-20160816; b=cARCkE7umtAeavkJk9cnmMahZxNpmp3XOEQfItuSJY/mS96lnjF+DHJLDZvRfzKxep HvYim7TIzCOxW2KZAF97Yy74PgUxvMMn+yGCmsihasP25pA+jFD+F805vtmPA0skYjwl 4nIwJa9FvEz7seHYeXsnAdM20kXj8JWXAsuVhoX5PiKIhnvV2+N9xm7qq8ZFfzFBAab2 MjMx+DoZYwsReqXay/gcB+SvYjenht+fbVnNjDWVDbKoCOSWwU3sPVeuqF2EHrzAXTbk /QLoBgfp7g49L1H92HVmGl0EmPlbwFENKV686HTUXhBRp6m2dYmQx1D1Q1Xsq/IcZNsj tihA== 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:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=DOXSjF+eq5ZVw1CXX2lEh2VQ/pA+DU53Mrk3FRb60nI=; b=J/belIHhNazB5b2xDT+lP5kXPwpToKUK0UDBi7Qfs/i3Fgbeip1Jp12m5ZGUlVzzdZ c5d1TWMylR7Bj/TCEz8GKC1gf/vtQWhQustzZvkYebgfoelxXNQ5vjM360PECq62yDwE F7J7vyQs5wSGZkRwlGEW6FCzbfOcJmywdJ+iMSu086IygeaRubSzMyY3/L3uGF7qWTT/ 3tm+xv6CIxu0rz+lnuO3159HXhhzap49X5ep/jz2TaFj1QkWaPh/Y6R0vPsMtYLZ82J3 s3VbWYU2cw3UET6TgnzIqMwTsOZKpJMzPNg/tJigTeLvglNfWdXFVdt1FshCdtHu+TAT HnQg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=K4lttHq2; 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=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u8si1428185eda.396.2020.07.29.06.39.39; Wed, 29 Jul 2020 06:40:02 -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=@redhat.com header.s=mimecast20190719 header.b=K4lttHq2; 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=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727072AbgG2NiB (ORCPT + 99 others); Wed, 29 Jul 2020 09:38:01 -0400 Received: from us-smtp-2.mimecast.com ([205.139.110.61]:42816 "EHLO us-smtp-delivery-1.mimecast.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726496AbgG2NiB (ORCPT ); Wed, 29 Jul 2020 09:38:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1596029879; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=DOXSjF+eq5ZVw1CXX2lEh2VQ/pA+DU53Mrk3FRb60nI=; b=K4lttHq2G868jGqtZmU4K6V+4Jcrk2SNJ7Q1Kk9+pFYlJ3tpirXCrVsE7/oMJGm1wdj0Bq va7Slu6yGKjaAHVLFHF1eBGoor9BmoqAgztupWcKXcsEkBTV9sEWuX+lM/+J6270LD3Lq2 N6AaEqpQgN6BcynKJPpqHs8mvI1h8u4= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-108-6Tn0NpQkOoeqzxnBhHOXPQ-1; Wed, 29 Jul 2020 09:37:55 -0400 X-MC-Unique: 6Tn0NpQkOoeqzxnBhHOXPQ-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D926879EC1; Wed, 29 Jul 2020 13:37:52 +0000 (UTC) Received: from rules.brq.redhat.com (unknown [10.40.208.54]) by smtp.corp.redhat.com (Postfix) with ESMTP id 411956932E; Wed, 29 Jul 2020 13:37:49 +0000 (UTC) From: Vladis Dronov To: linuxppc-dev@lists.ozlabs.org Cc: "Aneesh Kumar K . V" , Benjamin Herrenschmidt , Michael Ellerman , Paul Mackerras , Vladis Dronov , linux-kernel@vger.kernel.org Subject: [PATCH] powerpc: fix function annotations to avoid section mismatch warnings with gcc-10 Date: Wed, 29 Jul 2020 15:37:41 +0200 Message-Id: <20200729133741.62789-1-vdronov@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Certain warnings are emitted for powerpc code when building with a gcc-10 toolset: WARNING: modpost: vmlinux.o(.text.unlikely+0x377c): Section mismatch in reference from the function remove_pmd_table() to the function .meminit.text:split_kernel_mapping() The function remove_pmd_table() references the function __meminit split_kernel_mapping(). This is often because remove_pmd_table lacks a __meminit annotation or the annotation of split_kernel_mapping is wrong. Add the appropriate __init and __meminit annotations to make modpost not complain. In all the cases there are just a single callsite from another __init or __meminit function: __meminit remove_pagetable() -> remove_pud_table() -> remove_pmd_table() __init prom_init() -> setup_secure_guest() __init xive_spapr_init() -> xive_spapr_disabled() Signed-off-by: Vladis Dronov --- arch/powerpc/kernel/prom_init.c | 4 ++-- arch/powerpc/mm/book3s64/radix_pgtable.c | 4 ++-- arch/powerpc/sysdev/xive/spapr.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c index 90c604d00b7d..f6ca7f450361 100644 --- a/arch/powerpc/kernel/prom_init.c +++ b/arch/powerpc/kernel/prom_init.c @@ -3262,7 +3262,7 @@ static int enter_secure_mode(unsigned long kbase, unsigned long fdt) /* * Call the Ultravisor to transfer us to secure memory if we have an ESM blob. */ -static void setup_secure_guest(unsigned long kbase, unsigned long fdt) +static void __init setup_secure_guest(unsigned long kbase, unsigned long fdt) { int ret; @@ -3292,7 +3292,7 @@ static void setup_secure_guest(unsigned long kbase, unsigned long fdt) } } #else -static void setup_secure_guest(unsigned long kbase, unsigned long fdt) +static void __init setup_secure_guest(unsigned long kbase, unsigned long fdt) { } #endif /* CONFIG_PPC_SVM */ diff --git a/arch/powerpc/mm/book3s64/radix_pgtable.c b/arch/powerpc/mm/book3s64/radix_pgtable.c index bb00e0cba119..b868c07110e3 100644 --- a/arch/powerpc/mm/book3s64/radix_pgtable.c +++ b/arch/powerpc/mm/book3s64/radix_pgtable.c @@ -800,7 +800,7 @@ static void __meminit split_kernel_mapping(unsigned long addr, unsigned long end pte_clear(&init_mm, addr, pte); } -static void remove_pmd_table(pmd_t *pmd_start, unsigned long addr, +static void __meminit remove_pmd_table(pmd_t *pmd_start, unsigned long addr, unsigned long end) { unsigned long next; @@ -825,7 +825,7 @@ static void remove_pmd_table(pmd_t *pmd_start, unsigned long addr, } } -static void remove_pud_table(pud_t *pud_start, unsigned long addr, +static void __meminit remove_pud_table(pud_t *pud_start, unsigned long addr, unsigned long end) { unsigned long next; diff --git a/arch/powerpc/sysdev/xive/spapr.c b/arch/powerpc/sysdev/xive/spapr.c index f0551a2be9df..1e3674d7ea7b 100644 --- a/arch/powerpc/sysdev/xive/spapr.c +++ b/arch/powerpc/sysdev/xive/spapr.c @@ -768,7 +768,7 @@ static const u8 *get_vec5_feature(unsigned int index) return vec5 + index; } -static bool xive_spapr_disabled(void) +static bool __init xive_spapr_disabled(void) { const u8 *vec5_xive; -- 2.26.2