From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id CC58FE7717F for ; Fri, 13 Dec 2024 02:24:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 27ABB6B007B; Thu, 12 Dec 2024 21:24:30 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 22A426B0082; Thu, 12 Dec 2024 21:24:30 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 119B16B0083; Thu, 12 Dec 2024 21:24:30 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id EE9C96B007B for ; Thu, 12 Dec 2024 21:24:29 -0500 (EST) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 92C97120B21 for ; Fri, 13 Dec 2024 02:24:29 +0000 (UTC) X-FDA: 82888341564.28.E6BEEBE Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf05.hostedemail.com (Postfix) with ESMTP id 0C0EC10000E for ; Fri, 13 Dec 2024 02:23:39 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=koyC9e94; spf=pass (imf05.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1734056644; a=rsa-sha256; cv=none; b=3uKuxXfDmZW/QEokV8ASFydElv1rS2zHsUvv/KyZKuK0/NNi0yA02pqxtqlYGO9HK5Edzs 44atIQcsOLuQBI+ZDE33lG3ZDJOL8/g/HkV7QftYVArIxU4Nd+efA/jLu0Hu+/QSt3FOab IU7/TfWe5lRkHnidaBTaQsbHiXJcrfw= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=koyC9e94; spf=pass (imf05.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1734056644; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=aLPG0LIp0pheYDibDJsE7FauRyB9fNNAETnOJfMEIBQ=; b=ZHPJee+gWXz0Y5C1c10bI6Si2xNTClvJbVdsoBsdywMuYp3kfuTOkhT7d9hLP58ib9hwqD 6XW53N7Zyk7yQpPiaXP2PpuU6IcClxDGVAH+2DKLwGl0FJBcvLmjtTDHTsxgWPKrK1zNiE /vAcIvyFo6tPFLPBiGea6DoVrKW+cf4= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 46B2C5C5B73; Fri, 13 Dec 2024 02:23:44 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2BD9EC4CECE; Fri, 13 Dec 2024 02:24:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1734056666; bh=b79RTTMIBNsV/Vl/b0qdBXhlgQM0fjm+2rgGBoMI+W4=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=koyC9e942c7uGtSo3qdXQWRlnTYxRkSsb4S5l18sIFOwIf7SXY5Eu9M3F7uV/dlqf ZgPCTHuUitwjyQJH/bBe1fpJ+nSBoVrDHUTxTilv2z/FGGo5iWp6T4rQF61N2Fuy8s aofukMG8Tg3ZoC2PCD4c75aUu90I2mP+SRcAHeYk= Date: Thu, 12 Dec 2024 18:24:25 -0800 From: Andrew Morton To: Bart Van Assche Cc: linux-mm@kvack.org, Konstantin Khlebnikov , Nathan Chancellor Subject: Re: [PATCH] mm/vmstat: Fix a W=1 clang compiler warning Message-Id: <20241212182425.ad1f7894cd0f00b2e34bbaed@linux-foundation.org> In-Reply-To: <20241212213126.1269116-1-bvanassche@acm.org> References: <20241212213126.1269116-1-bvanassche@acm.org> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 0C0EC10000E X-Stat-Signature: 5rkh9h3pnmr6ghinpba58nxjna5yrc8i X-Rspam-User: X-Rspamd-Server: rspam09 X-HE-Tag: 1734056619-782503 X-HE-Meta: U2FsdGVkX19xJN8DMXE+XSMBLdG3Qfk0k9jw7hltmskBJNl55xsD2KiuryGFa3MBxWngGZv5cdwUgnQx/bpwDzT6kOtf2wHUv4gBl8LlC4RSTRwZ5F1Hlmznm2XyI8SSkq9c2o3Iw9+VNLZkZI14t77IaNrDUFUAdwxmkrx9cSB+GNnDuaGYSq4zlQNc4xzLSIRihpSkX3mGWBFOkUZHoff89XAsaWhkXJ6Qd9WJ0mK3x/G4XCwfJjDsq5gsi7m+5P+1/y/WPpbDqrYgKk1UKLCXZFgvABeRc8Hxkgh1UGvjD/lUoI4EVZ+wb3lxYiqXoR3I5/0DpUyhhDmg3mXtxYw4gX4J35rIcTAwQjx+yBjp9s/UY4ZFPwY0saukGmQ0MpStyBRwZwBhMAa51R+aPgKSFIyLyod4caDnCPVZIM/9+x+oFdgM+6FS4TqC8vMTc9qn6dnsMrsye82PgG3PtuJ6UaiXLeSs1U00SV//TdyvvdYzD44Je6H+1BknI1Wj318t05Kl3DNuLHgz4Y1pFjZ6Mwc5/ea3XLI0JWkMbWD2ZPwQ33v5cdlHTa7/n4aQMg14NX5AKZh+K2qXRbsJazEFkX5BHPNzbrsp+mkKlOJ717IURyiJ18qeSAgZEfhza5lEIoBZY5y5SSjCHSfkWL8XK2n+FyuRObl9y1L/a6YOnd5ij41hgItdAt3T7o/aQn2MUByhKhu2Zu5hTRLcGAuoaR/CH5DQBHpyY08lvyCEk/5WyHCQ9gzS2twsrYpWXL5B/8u/1RqmskT8P7eNHmI0nLOrYKxO/gpUH31SqCsj3NbPiCXTk8TETBSlfdV6Kvl/Q+GlTwG1w9h0iuWdoMzzhSylpn1k5jVbutzne6VZLPkmertp/KpIr80oiTv3QmW7DAvm+7e+8u887BcRAysejtHq1YOu74ufUk0Mslvv+O73ivCpDcPlJmwFdW1v0OAdjDtZkUboQBks+Dd xxHBun6H RjiWeNtiPyRkGAxd2Dnu8mahFOqdrgZUnRscvECLAiGdzNJdzzRYhpurjYoJjay69JylNTPqfhmhhj+9oVjbauo0FLO3mBZjLxX57dDQu6M4CuIxHyItN6cCgirSjVVwrNqjda6jAr4tSAPEZJGOmHjzQQVkyjA0wf7/sVqSDioAymJuaWobFF+UL+AaU1/NyzFmq6ZPel8xaWl99aOuegPAF3fmaTXf04op8r6p0iIQlhqjXfDbIM1DYBm7t5XB7VRNStUanJCtOGqy23/TK2GH9aA== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Thu, 12 Dec 2024 13:31:26 -0800 Bart Van Assche wrote: > Fix the following clang compiler warning that is reported if the kernel is > built with W=1: > > ./include/linux/vmstat.h:518:36: error: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Werror,-Wenum-enum-conversion] > 518 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" > | ~~~~~~~~~~~ ^ ~~~ > > ... > > --- a/include/linux/vmstat.h > +++ b/include/linux/vmstat.h > @@ -515,7 +515,7 @@ static inline const char *node_stat_name(enum node_stat_item item) > > static inline const char *lru_list_name(enum lru_list lru) > { > - return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" > + return node_stat_name(NR_LRU_BASE + (enum node_stat_item)lru) + 3; // skip "nr_" > } > Spose so. One always suspects that adding a typecast is a sign that we screwed things up somehow. The relationship between enums lru_list and node_stat_item is foggy, and I'm unsure whether this is the place to make the transition it. Perhaps lru_list_name() should take an `unsigned int' arg instead.