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 A1AA8C25B75 for ; Wed, 29 May 2024 07:54:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 16E146B0085; Wed, 29 May 2024 03:54:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 11E096B0089; Wed, 29 May 2024 03:54:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F29586B0098; Wed, 29 May 2024 03:54:37 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id D241B6B0085 for ; Wed, 29 May 2024 03:54:37 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 733F740C49 for ; Wed, 29 May 2024 07:54:37 +0000 (UTC) X-FDA: 82170671394.01.73D78FD Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf24.hostedemail.com (Postfix) with ESMTP id CE473180016 for ; Wed, 29 May 2024 07:54:35 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b="sRd/dsTa"; dkim=pass header.d=linutronix.de header.s=2020e header.b=2r2MFC5O; spf=pass (imf24.hostedemail.com: domain of tglx@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=tglx@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1716969276; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=/9Jwqm1+aDHY+Bt1tJ5cZFazG5FUw+n1gmaPQ2sv+ck=; b=uPiWURg39SP+X9QpPb/BWdrp6O9lERUSb8RJ7spAp+eYJwcz0vvkveGaDk6AZBhJdtCZn7 JA82B5Zc3uumLLvnHVhOiRw2zGtU4jhU7YGsUBWIIGQg7yATYorPKYTf3mI5nOG/5n9Lzn t5fI2fxca3Wn1tpzfeBvIYxKjLKVuPc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1716969276; a=rsa-sha256; cv=none; b=X7ub+0b3HtzoY8M9ZC0cz7bgslaXtW3qpsnV807h+Nv9+JyhDrLYE0ZXBSmvDr4dscVODg oPwvWdChGLkHu4LjVgDHtQCpKUFestgK5tAla9feG4FWABPF5a48pdDvtsUykbzEH5pqGV qWL9sV2kjSMdZZmujkhs79SkSsWrp+s= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b="sRd/dsTa"; dkim=pass header.d=linutronix.de header.s=2020e header.b=2r2MFC5O; spf=pass (imf24.hostedemail.com: domain of tglx@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=tglx@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1716969273; 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: in-reply-to:in-reply-to:references:references; bh=/9Jwqm1+aDHY+Bt1tJ5cZFazG5FUw+n1gmaPQ2sv+ck=; b=sRd/dsTa7l7fsCe7Oj7XvokjWfeP7R91M8TE4PGPDnNLWOpl6OMSm9aOP9GSk2IVNYoQhI ACRgWQf66J+Qv7iypgX0t3dbKA9NrSggcinIDTxpiipDlGB8jmvYyfUHgBgGdYSBLBG8QB e0KVGSDQ+JgOyK3UDmKKVIa8GA586flVonTwLUnGVR3Rt2L9NfvSVwwl7TshYLFDVsTAYj 9Cb86cytTILL4+aPhygj5YIBdNaY0VDF7PWPoc2UkXCGZqkxWHhKJwcmDHsQf0H1+HCIvh iYws1KsFj2quMYknSaslfkcxo82T2RaJmZueyn5aV99XJIhHUwHv0CyjYhMDkg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1716969273; 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: in-reply-to:in-reply-to:references:references; bh=/9Jwqm1+aDHY+Bt1tJ5cZFazG5FUw+n1gmaPQ2sv+ck=; b=2r2MFC5OMx6bBOy2ivGBV6i2XpHjELCImCa6yOGKv2y1JKpVyg4tv2YXwJwA/3KpGM6boK eO8H4AoAStt3IiDQ== To: Alexey Dobriyan , dennis@kernel.org, tj@kernel.org, cl@linux.com Cc: linux-mm@kvack.org, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com Subject: Re: [PATCH] x86/percpu: fix cast in __pcpu_cast_* macros In-Reply-To: References: Date: Wed, 29 May 2024 09:54:33 +0200 Message-ID: <87cyp59hom.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain X-Rspam-User: X-Stat-Signature: ryuzuqgz1nebumi4rs153ksdgrxpmi9g X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: CE473180016 X-HE-Tag: 1716969275-755212 X-HE-Meta: U2FsdGVkX1+qsqAdQuNZuSH/Kd+6By22Nh+06JXtUFcL9KN1UTUmQnL7hBBV0v6AVfcmQvP2iqJslEmPlVXjdiUFxY71/Xow7zle/pn9On0t+jliYsHTM7h9asdFezeFO3pRs+FpeTjTI/A9d4AuLH5R2EKjBQ1hK7FsxWbzzXSTP4FeI/t2iyQuRaQtni2Lv+OkAE7aU30P1fPPa6s98HoTgzi8d/n7F2MqmGOyg4UB9k5SK/8bg4QwYPk04YVa6iUVtsDrT9plzldvKwYeXWIU6X4dTeQWVvwgy392rwKhe5HIQJosQA3RJjQgFUOP1yMH9vQZ3TuRH/awfkQcS7rCeqi3g3FiX6/QEbaJCT/z/opcW+EzZJi4pBvZUn6X/YOYwbNh4kKat3t0SsWyPcAFxt66K7V4WkYsy2M+47KfT84izQqD73b0yH0F+kANke1u67WN84RZaa84jSzmLFtP10MIZyKqMSYBYBdDzxtsBGj7UYgUiKxReKZn3Zfk0S+Rar9RRL5wtZvvcwtXChGG10PwMARgRoNv1axWrvxOzmXMZKigyMmxyFGHGpJuknpM2QklXVzQWMZURD18E3T2rI9dvFodzR5lhDeiuQ8etC8P1r5dpDvALVlI9sguoJ7FUhq7BiKJ3KA4k2zJw7XMBj/h12SW0ffz/HE3M4jnpYF0kWb2X5k3iNEE7RTK1ymVlFv3ukrC+cvw4SK0HLzGBNC5e5g9pUejQ1SzNfpiqT5vqhfM8+ky2cBIdXQPLKmkj6n2AJbkN6Uc9UVa1yflRnXRfW8UXsXg7UTAawVvUS/NswIYNai5ZQ8SxkT8UdpoFtqIEv0HI34ehXeHry3V7DSAYN6Im55/9prCmdyME9KzciBnroPe1ZuMVvU+lcD+DCWiJ0kuq80CunR4uQXCYTViDwn3rlqdltR+vxxNCHSvfERUDJ4kiUSqV8lJBeMa4nD/UnhbLKgW8Ga fjrmbIdd JdJcaFBnbIzlPJuJhhQOoR3NEZbBCY7nfVs+wrX4N3BqJqn9qPRTC2HqmcQW6Anm3r+3RKA5Jo/TXyfuO3QMOL9Kk86iO2G6jQstV 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 Mon, May 27 2024 at 08:51, Alexey Dobriyan wrote: > Fix compile failure > > this_cpu_add(*p, x = 1); > > kernel/test.c:7:29: error: lvalue required as left operand of assignment > 7 | this_cpu_add(*p, x = 1); > | ^ > arch/x86/include/asm/percpu.h:134:51: note: in definition of macro '__pcpu_cast_1' > 134 | #define __pcpu_cast_1(val) ((u8)(((unsigned long) val) & 0xff)) > > > This pattern is almost always wrong: > > #define M(x) ((T)x) > > also because it can't be used with assignment expressions: cast makes > left part of it non-lvalue and assignment to non-lvalue has to break > compilation. In principle I agree with the change itself, but I really don't see the point for this_cpu_add(*p, x = 1); Even if C supports it, it's just nasty and tasteless. Thanks, tglx