Received: by 10.213.65.68 with SMTP id h4csp1557296imn; Wed, 4 Apr 2018 23:00:16 -0700 (PDT) X-Google-Smtp-Source: AIpwx4/N/WZPjBL1X/unxC8TdwPYKzy5elpCaFqcOBzzqQqaq3Fd2KFC3UGGU585sQajtuENdd+b X-Received: by 10.98.202.24 with SMTP id n24mr1122602pfg.45.1522908016379; Wed, 04 Apr 2018 23:00:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522908016; cv=none; d=google.com; s=arc-20160816; b=A0R4oAzT7//ZUny12Qr4kvFUI21Vzq29lj9/80vZRInYgf15FTGq6Xy1bVXsJ5pG1l PG694yxmZPsMkFT2eYf21vWteC09I0CVv283aHeDVX7Sm6H3nOGKNFh8is39FtQECwQZ ABCt7QXL1vuJHwyW1oRBJ1dwnRZdnD5y9dg/e2hATG0Yps4icKQXv3DY/QhcSyk7bUWZ uIOpqYZfvZcTEDSNUV/sJigzOvXlQjTr75eBHVKm+iP2xW46BErX9Eesx/wqEAt1uzxl jKaeoQto7jpW9Z2aRVqfsGafRknYHBxP0tTlN5gWMeHQ44E3Tyr5kCL6XairNzNpIyog YdAw== 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:references:in-reply-to:subject:cc:to:from :arc-authentication-results; bh=nJjaspvBIFHcc5URmAIIH+s0oAdpfKnEg4PFkwAsct8=; b=xDLtPw0bExFyVB/GFIrxeoXhhqxdO0CkledJT862ekb3tB0WEgniYufO2lsYvqgUbF X7FYNVYAhYpduaHH92E4ZLjUZD1RS2Tvw0yai7daYmPrSytzK/IZ8v/puh3T4PXHrf2F kaqBT1N/JjnEh8MW/aPzJ1Rvwj4EW7mD086cg2K1suPPup1cGHIasnnkS/VkKs4dMWh1 NYglLeO4CvytcdwZNYrGMzTnwf1LjQQG2zwmJcRg8iIGPoo/GNxeOc8LII3KSCB1rFPw 4ve0whurROOf8VKWHVwBz8F+yK1JsvNeTL8F3yQQCJzFKpG3YYK3AxJV0I86wXnytyDx Gb3g== 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 v9-v6si5184982plo.681.2018.04.04.22.59.49; Wed, 04 Apr 2018 23:00:16 -0700 (PDT) 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 S1751236AbeDEF6D convert rfc822-to-8bit (ORCPT + 99 others); Thu, 5 Apr 2018 01:58:03 -0400 Received: from ozlabs.org ([103.22.144.67]:39249 "EHLO ozlabs.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750835AbeDEF6C (ORCPT ); Thu, 5 Apr 2018 01:58:02 -0400 Received: from authenticated.ozlabs.org (localhost [127.0.0.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPSA id 40GsZ05lnLz9s0y; Thu, 5 Apr 2018 15:58:00 +1000 (AEST) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=ellerman.id.au From: Michael Ellerman To: LEROY Christophe , Mathieu Malaterre Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, "Paul Mackerras" , Benjamin Herrenschmidt Subject: Re: [PATCH v2 03/19] powerpc: Mark variables as unused In-Reply-To: <20180329181422.Horde.4gvIQbpSZkuyC4Yzg06PKw2@messagerie.si.c-s.fr> References: <20180322202007.23088-4-malat@debian.org> <20180328193307.978-1-malat@debian.org> <20180329181422.Horde.4gvIQbpSZkuyC4Yzg06PKw2@messagerie.si.c-s.fr> Date: Thu, 05 Apr 2018 15:57:59 +1000 Message-ID: <87fu4atct4.fsf@concordia.ellerman.id.au> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org LEROY Christophe writes: > Mathieu Malaterre a écrit : > >> Add gcc attribute unused for two variables. Fix warnings treated as errors >> with W=1: >> >> arch/powerpc/kernel/prom_init.c:1388:8: error: variable ‘path’ set >> but not used [-Werror=unused-but-set-variable] >> >> Suggested-by: Christophe Leroy >> Signed-off-by: Mathieu Malaterre >> --- >> v2: move path within ifdef DEBUG_PROM >> >> arch/powerpc/kernel/prom_init.c | 6 +++--- >> 1 file changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/arch/powerpc/kernel/prom_init.c >> b/arch/powerpc/kernel/prom_init.c >> index acf4b2e0530c..4163b11abb6c 100644 >> --- a/arch/powerpc/kernel/prom_init.c >> +++ b/arch/powerpc/kernel/prom_init.c >> @@ -603,7 +603,7 @@ static void __init early_cmdline_parse(void) >> const char *opt; >> >> char *p; >> - int l = 0; >> + int l __maybe_unused = 0; >> >> prom_cmd_line[0] = 0; >> p = prom_cmd_line; >> @@ -1385,7 +1385,7 @@ static void __init reserve_mem(u64 base, u64 size) >> static void __init prom_init_mem(void) >> { >> phandle node; >> - char *path, type[64]; >> + char *path __maybe_unused, type[64]; > > You should enclose that in an ifdef DEBUG_PROM instead of hiding the warning I disagree, the result is horrible: static void __init prom_init_mem(void) { phandle node; - char *path, type[64]; +#ifdef DEBUG_PROM + char *path; +#endif + char type[64]; unsigned int plen; cell_t *p, *endp; __be32 val; The right fix is to move the debug logic into a helper, and put the path in there, eg. something like (not tested): diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c index f9d6befb55a6..b02fa2ccc70b 100644 --- a/arch/powerpc/kernel/prom_init.c +++ b/arch/powerpc/kernel/prom_init.c @@ -1389,6 +1389,18 @@ static void __init reserve_mem(u64 base, u64 size) mem_reserve_cnt = cnt + 1; } +#ifdef DEBUG_PROM +static void prom_debug_path(phandle node) +{ + char *path; + path = prom_scratch; + memset(path, 0, PROM_SCRATCH_SIZE); + call_prom("package-to-path", 3, 1, node, path, PROM_SCRATCH_SIZE-1); + prom_debug(" node %s :\n", path); +} +#else +static void prom_debug_path(phandle node) { } +#endif /* DEBUG_PROM */ /* * Initialize memory allocation mechanism, parse "memory" nodes and * obtain that way the top of memory and RMO to setup out local allocator @@ -1441,11 +1453,7 @@ static void __init prom_init_mem(void) p = regbuf; endp = p + (plen / sizeof(cell_t)); -#ifdef DEBUG_PROM - memset(path, 0, PROM_SCRATCH_SIZE); - call_prom("package-to-path", 3, 1, node, path, PROM_SCRATCH_SIZE-1); - prom_debug(" node %s :\n", path); -#endif /* DEBUG_PROM */ + prom_debug_path(node); while ((endp - p) >= (rac + rsc)) { unsigned long base, size; Although that also begs the question of why the hell do we need path at all, and not just use prom_scratch directly? cheers