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 2E7B2C83F27 for ; Tue, 15 Jul 2025 22:10:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C4F006B009B; Tue, 15 Jul 2025 18:10:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BFF5D6B009C; Tue, 15 Jul 2025 18:10:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B15456B009D; Tue, 15 Jul 2025 18:10:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id A25706B009B for ; Tue, 15 Jul 2025 18:10:36 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 7538B1401E6 for ; Tue, 15 Jul 2025 22:10:36 +0000 (UTC) X-FDA: 83667894072.29.D884F29 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf06.hostedemail.com (Postfix) with ESMTP id 09EBB18000E for ; Tue, 15 Jul 2025 22:10:33 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=CA+zJdSt; spf=pass (imf06.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752617434; 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=y+67HnVcSFpNiw/rBFyAFgRiuoVZq7tztY8c0N72Msk=; b=oihJ3QuX35CIooPj0u3aFMFeAqq7H8HqU7JpzFP+BRAbNU06sGPYKgB+bNOfs8vDDjG6wJ r96qBG0vHVkRqzajNWRIVC3oVLGB9rtHVokg/lPHKxUdyZEeOAET5AHGwYz4Xve9oMVEfx ocqxIViJppkwarwuj9tdc6Rz5bA8RZE= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=CA+zJdSt; spf=pass (imf06.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752617434; a=rsa-sha256; cv=none; b=XuOK4WVu3dqz57bCNeTyARN//TYy1q5sEGkHM9+qYj5XF1WbEWA8PrB+X+L6ENvGUTh3E1 tXa/wJMB8iYjR9pqUJ/QgqZh+eYRukhmb2YqYBXP3v6bDaK685O6rHzRyQdUtuMCDet8F3 wch6QJDF83rmX3lor9z7gBGXkNl4l7s= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1752617433; h=from:from: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; bh=y+67HnVcSFpNiw/rBFyAFgRiuoVZq7tztY8c0N72Msk=; b=CA+zJdStE5MUueQrq3OhiMuSi9iUd9c6cUjrE1Ij09+q1VtVdpHMDVoHCYNHi4qAnWCYbH A8fNNgWF6kYX/u9bja2BhoQqYfMuz3fNKOR/krWgM7h3UVJf3fcLrcupiQnmAAvzQLE1dC exb4IXZaLTG/x5DXehddgN/+piVqEyc= Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-177-wRVNwy6ZNTyKbizjcKKb8g-1; Tue, 15 Jul 2025 18:10:32 -0400 X-MC-Unique: wRVNwy6ZNTyKbizjcKKb8g-1 X-Mimecast-MFC-AGG-ID: wRVNwy6ZNTyKbizjcKKb8g_1752617431 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-3a5780e8137so127690f8f.1 for ; Tue, 15 Jul 2025 15:10:31 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752617431; x=1753222231; h=content-transfer-encoding:in-reply-to:organization:content-language :from:references:cc:to:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=y+67HnVcSFpNiw/rBFyAFgRiuoVZq7tztY8c0N72Msk=; b=X3Zn2zg22k5rFunDPOtYPZ9VsbNnUzShTs949WuHMvvQeO8MAq3ZpwDyEkT+0TZcFG xzGrPBC5LQY1bQl8t+WiBBdXGrDDOVD/UgLbxvo7Y7x29RJGKYpPi5Arh9RSGDTL/w/F ag1vBv8B+CtvSqbQ0r3MlSStRJ21dEv4dm1UHujbL2/abMHgkQYaHKQJykk041FBUn+V wpeLmoBt7FHz2Ih+kGEzTKloQsikcJWdXfkum+TrnzNujXNs2fBUupd03mVsvNbIoGAb 286EcdMFm/2Qm8QXmiQTH10csScXZ5VvPuxamOSrHfcCb1P1r8sK+d5NrRo126rualeS qtxw== X-Forwarded-Encrypted: i=1; AJvYcCVnptVTEUAcMRbiQHTuRR+eR9B3gPkjv2RsGA262hHC17uym4HJv6NOohYIlDk4rbe2vONLLY9HLA==@kvack.org X-Gm-Message-State: AOJu0YyVONVwU+xudmvcdQpFKm5BsdoC9ntMd+JP4NHlTieUnHbfLnXH vHbXVCc6da9HawoVyG5ypBQBrlGyZDKvDm35HITRfw713lvahnI2YGO10PJCBbf63/obX+SGoDd qUYMHC9ebwXwu+6vSnm0/6JL3d+2i2ccOCH9BgIjjzxeuIygqMl8G X-Gm-Gg: ASbGncu3sgzHFRoX7YXrCM0EfADN68ii60ODB2LjPhSQuBZ3Y4OcXcFCHNXxA0bbda3 Fy17/FGg0cgo967QETa7n9D+kdjhsKwTyRsWJgFDonJcTIUyqIjFhSQ/SWozFNEiXaRnk1p81rR qanilIA2Vml35K3Lnlixb86nFmUvtNSKQ5nPlRxT94pFIWRrLmo39TkGoMPZF4yU0qNK9qjqeIh JT0XU4mLrUaDmiQROJ73sgSHjRphVHQXaN5nz+E89QivaDU9OsUOFNLOvW9xh8kFoo0WSacwgu2 qjFk34m8CaMgaQNx/a5k9yQ0eEvimneCAuJ4SmhUBkgKPrHyXkkDrd3aJ6flbxbIGO7lbkVehBY rysETwRrPV0jCei7J7LZiHGC2LpiaPnWQ0Ud4Vw3nxKTwrVNFjAykKXgDMp4t3sqLrmM= X-Received: by 2002:a05:6000:240c:b0:3b5:f151:207f with SMTP id ffacd0b85a97d-3b60dd400b9mr641200f8f.3.1752617430812; Tue, 15 Jul 2025 15:10:30 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHB84MFGi05rY35yL6MIzZQ0EALiVeKmmgXNHM4/pemU7kxyusO5BHrdWD1UdN7S4Bt+4ZHCw== X-Received: by 2002:a05:6000:240c:b0:3b5:f151:207f with SMTP id ffacd0b85a97d-3b60dd400b9mr641184f8f.3.1752617430413; Tue, 15 Jul 2025 15:10:30 -0700 (PDT) Received: from ?IPV6:2003:d8:2f28:4900:2c24:4e20:1f21:9fbd? (p200300d82f2849002c244e201f219fbd.dip0.t-ipconnect.de. [2003:d8:2f28:4900:2c24:4e20:1f21:9fbd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b5e8e26c97sm16385239f8f.90.2025.07.15.15.10.29 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 15 Jul 2025 15:10:29 -0700 (PDT) Message-ID: Date: Wed, 16 Jul 2025 00:10:28 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] mm/ksm: Fix -Wsometimes-uninitialized from clang-21 in advisor_mode_show() To: Andrew Morton , Nathan Chancellor Cc: Xu Xin , Chengming Zhou , Stefan Roesch , linux-mm@kvack.org, llvm@lists.linux.dev, stable@vger.kernel.org References: <20250715-ksm-fix-clang-21-uninit-warning-v1-1-f443feb4bfc4@kernel.org> <20250715144926.90546c48efc5f288cfde319e@linux-foundation.org> From: David Hildenbrand Organization: Red Hat In-Reply-To: <20250715144926.90546c48efc5f288cfde319e@linux-foundation.org> X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: QSfsONFbR5-e7hAeaoOjRaqfgLSWoOl10JZaelYUvyY_1752617431 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Stat-Signature: tmaaib78qxm1ino6ijpcnktzn513twob X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 09EBB18000E X-Rspam-User: X-HE-Tag: 1752617433-11321 X-HE-Meta: U2FsdGVkX19T31l3kW6HUWixxzGs4yfyPle+8EdXAqifYmCN64A9KsEeIzs81begBTJNeA6u5sjKjfXBN9s618C8ky06wZRtLzd+VJfRNb57OK/vakiGBkLoTxztzDVXUCOfdVz1LCjheaD7jdqH+WH287NPIGULza0wNoBj6B1MuynZxRjPHYq2eTTyVjFpGt6LrgviSVdSHMK7kcoihE1jaWt1fFNv2I3j02ZYKQ38Q61b7X9YRWUNKIRrOiHrnlo7vqj9o4ijj/l0qgH/uIcqLGac6JeOlQkKDzd3mycToLmX2EyBwDUGrybwW6h9p5/P5230FQNksBSye5tofVoxLOqXiOylrbGJOlNB+Mhh+0ikiZ6+jxJ7RuMxq4sjH8TMaz0R6eccvLauJuxyKSk3QQqAEOaC+N9c6HLey6akSQjjLwxJW/S9vPR+ofHiJtj8RhZz2y7zul5EazeM/TnxPHY1LAyzwmQ9I8UnrFKSM/uK4KAZlQYxhvTlCDsnHa7gf7XXZYvfOCcceYRxGoxqQwvdPInEE4i+Xv1Pz/XyAw9Md7UJGi70JHn8Ws0URl6fOSPecKY7euSNI4uoBJBnDDvd2rPtfzEjeWfNFeI4PisU7EXeUO1LzKdukbd5RbwCEZg6hCos3ZkGMLSGfA0Mf58pqiy9M/AeCLwyA5+kaVSrDR4xAEACQUznGzMNC0xn/nD8oJ8ifwN0LY0rH61igXLGSGNBXAqlPZclBJEnBP4+1VkxmHBGdylx/qm51CVZjU8B/5clwivpKvo1jffHlG6nqdnNg00FkCG/wA0AXFZnpIFQYwJkGcEOqc/2E/xJKH4hsr3/xoHc0S2hT4LOnMlnLCF4fkn1f9Agw5gToCjzQ9MQ3wvKOHmrfGyWlEbUk80d1TRdDJ+FyACVXhXLcPPYziYTFnUCQ2xmnI+yi/lM2JwQvANY2PROHb0Rtbw1+PhzFkHTME4sWo+ 3EsbDiSD 9GqCkAcN8hxk7zeAdkPR1bJzXoeKRXwSMMIx18n5AbQ3FLx81v8MOfRagU60kuPjEQ2w+YOJFOWB3aML5eVK7eIf9HSWhHc4joNhDNR8G8Gp9Sq7Qdr/ItusAG9jL8nVRhuiaFG3+F15zdeeuaRMLq7nwKpzurASAF9IBJ5fMoy8xNh2CfD31gtMm+I9LQ+HJEUz2zIqOabC4U7IMjWrLWkS4cmF7iwNpXMRwH5C/ZzO/+rNV7U/WZYuXvB+DnRkM1ZlW6gog9tVyJdj4XBJnfPLim2Uu6ngNhfDlLz6HN/upcD9vNHdmRoFRpgV0BIY8W7pyCFRV0R9jU4HfH3/Jns6lDA6GKhEaGT3AqgrOUMmbcKrPq7cC4ssRTA6A1WUCOpg3TCNcOoR6XkBLkwzX5NTvqvfQAJSah/vEMzwSpMPnahJzbIkq+ltOJ0mcPnLH6C2GPZbxWU1KP5E75ZZXIkqYpw1iAtnm3OGbEKaRXVVTzo0eK6pftCrh82+uExDlrYqA54KnqKbP0O0= 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 15.07.25 23:49, Andrew Morton wrote: > On Tue, 15 Jul 2025 12:56:16 -0700 Nathan Chancellor wrote: > >> After a recent change in clang to expose uninitialized warnings from >> const variables [1], there is a warning from the if statement in >> advisor_mode_show(). > > I'll change this to "a false positive warning". > >> mm/ksm.c:3687:11: error: variable 'output' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] >> 3687 | else if (ksm_advisor == KSM_ADVISOR_SCAN_TIME) >> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> mm/ksm.c:3690:33: note: uninitialized use occurs here >> 3690 | return sysfs_emit(buf, "%s\n", output); >> | ^~~~~~ >> >> Rewrite the if statement to implicitly make KSM_ADVISOR_NONE the else >> branch so that it is obvious to the compiler that ksm_advisor can only >> be KSM_ADVISOR_NONE or KSM_ADVISOR_SCAN_TIME due to the assignments in >> advisor_mode_store(). >> >> --- a/mm/ksm.c >> +++ b/mm/ksm.c >> @@ -3682,10 +3682,10 @@ static ssize_t advisor_mode_show(struct kobject *kobj, >> { >> const char *output; >> >> - if (ksm_advisor == KSM_ADVISOR_NONE) >> - output = "[none] scan-time"; >> - else if (ksm_advisor == KSM_ADVISOR_SCAN_TIME) >> + if (ksm_advisor == KSM_ADVISOR_SCAN_TIME) >> output = "none [scan-time]"; >> + else >> + output = "[none] scan-time"; >> >> return sysfs_emit(buf, "%s\n", output); >> } > > Ho hum OK, but the code did deteriorate a bit. > > static ssize_t advisor_mode_show(struct kobject *kobj, > struct kobj_attribute *attr, char *buf) > { > const char *output; > > if (ksm_advisor == KSM_ADVISOR_SCAN_TIME) > output = "none [scan-time]"; > else > output = "[none] scan-time"; > > return sysfs_emit(buf, "%s\n", output); > } > > Inconsistent with the other code which looks at this enum. Previously > the code explicitly recognized that there are only two modes and that > became implicit. > > Oh well, no big deal and we don't want clang builds erroring out like > this. Acked-by: David Hildenbrand -- Cheers, David / dhildenb