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 43D7DD729E9 for ; Fri, 29 Nov 2024 16:33:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CBF786B00A3; Fri, 29 Nov 2024 11:33:49 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C6E706B00A4; Fri, 29 Nov 2024 11:33:49 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B369C6B00A5; Fri, 29 Nov 2024 11:33:49 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 951CA6B00A3 for ; Fri, 29 Nov 2024 11:33:49 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 556D2AF1F4 for ; Fri, 29 Nov 2024 16:33:49 +0000 (UTC) X-FDA: 82839678558.03.EFC25E1 Received: from mail-lj1-f177.google.com (mail-lj1-f177.google.com [209.85.208.177]) by imf12.hostedemail.com (Postfix) with ESMTP id B056D40020 for ; Fri, 29 Nov 2024 16:33:43 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=JXSqWWe4; spf=pass (imf12.hostedemail.com: domain of ubizjak@gmail.com designates 209.85.208.177 as permitted sender) smtp.mailfrom=ubizjak@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1732898019; a=rsa-sha256; cv=none; b=k3zITvyOVDpIUq8BtY/1WzZTzMNdJbMm66PaDy6Th2JJY5Kqwp25KRKx+RwfqJkVoK23zC YlgYxHr1XTG3Y98QJKfdiDdGIprb00CNTPkJvI5sGw4Bkf0/kSR3DD4p6obblqS/2g6O5J +v4UeHcyomWfD5pYqLQ3orYUF7gIldo= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=JXSqWWe4; spf=pass (imf12.hostedemail.com: domain of ubizjak@gmail.com designates 209.85.208.177 as permitted sender) smtp.mailfrom=ubizjak@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1732898019; 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=3o5c5OkJBnxuHx2X8U5fNa7RxI4N2MNNsd2C+SVC6H4=; b=ga2feFpFmGyG1F+pGyFkYUHt20HJkcnHP14NpMJspO77S2rTTWSAH+YSGKjTt/mpkOmh0W INaT6RtHV24CtSFPmLDvpYCApPVTMPRti/MmifJaZUqWpeXqdEgcHJ+31hpLb4pzJHeRrB vVkm6ZdAP4RSjmzaZVL3SEzQsZ9wRUA= Received: by mail-lj1-f177.google.com with SMTP id 38308e7fff4ca-2ffc357ea33so23284461fa.0 for ; Fri, 29 Nov 2024 08:33:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1732898025; x=1733502825; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=3o5c5OkJBnxuHx2X8U5fNa7RxI4N2MNNsd2C+SVC6H4=; b=JXSqWWe4y+Rtti1Orus2zBg/BzWKOoVrNpL9L8MUDCoE1IafIdLHpDCVaeKq8H+AWL twKsNXu2d5aD6UzzKiv6dxEJ1yAjBnqPE3iydgAAPtTxBE61kY3WWZ31ptaWUuzbm+4u h6ucVZ5mCctENu0lc2hWwK8gVQeBYhsWFnRuqslDReT7dc6m/p2q5q3bhOOqVdWtsmr3 fT0QOYIY9uQeiUzn+EMAKT55mBjKVq81gEhF7l8U1+lDDt+WDS5ylEAumuJwX2oC3R3D Sa2rIHeCI3cq8vl+soX8ef1iM+/54OEuIxgF5mlGPp93rKPyHYZXq/o2u9Gys5pHc357 Ebyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732898025; x=1733502825; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3o5c5OkJBnxuHx2X8U5fNa7RxI4N2MNNsd2C+SVC6H4=; b=hRKcHHSoz/g/qU70jRvWZZeRvbrnq3HvpnUfevkDZXa8IFwLKp8dxA/DgS9fQLwL1E eaKENLCSVPPJbNEIhrtq4aFcrW2s9Osc8ZcMkMjB/Ry+KP/MqHd9fn7XBmawlVfokVpr qI5Y8uby+VIPfjyzxLua6VmBNECW/g5B0Ir4U0hXAkjlC62MNqGe+lr7D/mWUJ64Jfxl eTd6V7qe0NFKa4oJ/G8MFnxtznhpJYrqNxDtNEs4gdra/NZqIqqESqoHhW6OVNRxuM48 1TXeFJpmQ+JFyKV7PoJSYkc1INl5o/w8Ptvjmll2nTyZiGQLsEOVeZt8bavYw3WEPNwk B3gw== X-Forwarded-Encrypted: i=1; AJvYcCWklSOWp9i1ML4qkDaAE55RC+EN/BG04SiVnqFSDLPNcvg35OL5/v7sriQ2cMAotduuui0Lnp1vtw==@kvack.org X-Gm-Message-State: AOJu0YyCz59vuoRE8b5t05hxaHViCi1e8FthH3mB6Fok3WrdWRrknlIC ITZxxHXtT7DcFjwZO3zI5FTD+BzN7a6GsR5B6UFZF4VYTO443J2KYnaFIx+ZB0N6li/N/4rgdKR pBW4YlqBrT5eIm29rdk1OAWSr7lU= X-Gm-Gg: ASbGncv7bD9GIsEMNzPAmFLahqZN63uKTnzovG99SCJp9vNRLwmnIWb37tZROfDTFDz etirvazHz4hRj8OWDCahMk2jcv5vmkVE= X-Google-Smtp-Source: AGHT+IFlFVlEhUxi6HFl3pGJQ6QkeeDU+I701r/q00tFH5KVLO7PE8iiSpjGYGZRstbj+0OGHuFgSmi6H+4E2uBgCeM= X-Received: by 2002:a2e:a916:0:b0:2fb:4982:daea with SMTP id 38308e7fff4ca-2ffd60dbdb9mr82866831fa.32.1732898025269; Fri, 29 Nov 2024 08:33:45 -0800 (PST) MIME-Version: 1.0 References: <20241126172332.112212-1-ubizjak@gmail.com> <20241126172332.112212-7-ubizjak@gmail.com> <9CECB9F7-E700-4A92-98B9-6FD027F9CE65@gmail.com> In-Reply-To: <9CECB9F7-E700-4A92-98B9-6FD027F9CE65@gmail.com> From: Uros Bizjak Date: Fri, 29 Nov 2024 17:33:33 +0100 Message-ID: Subject: Re: [PATCH 6/6] percpu/x86: Enable strict percpu checks via named AS qualifiers To: Nadav Amit Cc: "the arch/x86 maintainers" , linux-sparse@vger.kernel.org, "open list:MEMORY MANAGEMENT" , Linux Kernel Mailing List , linux-bcachefs@vger.kernel.org, linux-arch@vger.kernel.org, netdev@vger.kernel.org, Dennis Zhou , Tejun Heo , Christoph Lameter , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Linus Torvalds , Andy Lutomirski , Luc Van Oostenryck , Brian Gerst , Peter Zijlstra Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: B056D40020 X-Stat-Signature: r5xe3co5tj7fqefm371w6yohhc1j6pd7 X-Rspam-User: X-Rspamd-Server: rspam09 X-HE-Tag: 1732898023-853590 X-HE-Meta: U2FsdGVkX1+6MDvRB+LRqAIqiC2dXf8imZjHmZlrtqmtQXthwNcSaTFUkteTW2FXGYt33m97/MvRBTU19ZRcu6aY+8JRZ7yqbXSynTrPpvnMILLlC26B9hJCst07iPfY/f4sklfiAXfuHEKuWHEQZMugVVgNsl51bbjpjO9jLSpgceS0O/1Kz+rtDeKI3obdB9tQynqjk+RTEBEo1JFzEiKWZrTNT58L4vCKe40WhZJeElBHWwqCq3ve/b/DIPVzFmhaGy2uI+UAvR2/haPRdLoAKIm1zxTAHrksXUfxfvnDPSe9PKhVfe7e4LjpO2VeuXvs9uScbvTpgm1DY/y68rUNDmwc6zKHwIa+NU06WoKsf4D2Ydzp42UrmjDqF0Ad/7gGlmLR1fiktBHlretK3bELGKQ8rWT6X5bxRTDfhdBzAk+OT1GntH/khRqPVnGnK+bBqJrDLZ7d2/qL61050TpMNw3d4sOeagYnoVfmxSh4p2+WYRtn43SA3ee3gYciZ3BOv0kK3DMlrxY+qzImzKZuMHLHj2SWkJDXiYH1N6b0npUIrC3RzCNZxOcQb1ge2LP8xHJ+PX0W7gohh6he29hM3KQBBTW3b3hRQVliOYkS4o3fOqWkIcYqrgvxQ3BLcDoFyQ592K7Elwr/2JjZOEksE3IQaq6eWPewGLGnd+Zb2cj2fhRlw/OUOvYQWXZLgzfZh3OcOjPAKfDzQyVhVpqtqbMzWG3D6OuugNtsDKfsXm6B0Cx6BAwDfrNIoDO5JHchljdT+MIPy4Ky8VzQoheklxcguuh7pyqhloXmOCSaCaXCe9a14JZyP4nVLk1/YpJ02bZXdKvWOoPNHPqGZ7x1W1WIh2j2qg3SMq4YR8Mmu4HSBzslp+yKzsVVr3ax6HOxo3J6jal3X6hdNXgNkUjW5KN8Lu52+ugNLghkETou6w5wuQM1XbF+SiiqydardEUYOv9+Y1aoE+at6+u qV+Z6m2z DzaT6W8WnpClR1x9RjhVPFq6dlNWLh8bFzPvJS+3cwVYHaPkrWWh62GVTuHRkU70xTXnUTwAscNSeMRjE2WfaQZU2V8qA3/YpGzcInJHiMZinQtBo/5LMzznhI2SsKCwrqHJ9WoDVu5xHYYa92T4XIna2YnzauAfpsV1uKgqprfnMW80bq0KPC7+z37O13CS5JgHGnBB8YEKuVkGvleeF4092+U2HgnWn0pJKAn8r+ThjS4yuvVTx7xynFfVhayx3rzZTbrgwLfLXQCGNCEQ5Ov2IUCtsleg496/cH38RkcJA8jyVNhO/pzK2tuai4ov6kp3slgQ6bQCRYb6Agf1pDwOoYP1/fNRJ6rra8AGsqp2fE9bZhC4dXNW+yiYI4u4PCHqe552qe/xp3kFuqTqlWWsNjiNhSopIeK2k 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 Fri, Nov 29, 2024 at 4:45=E2=80=AFPM Nadav Amit w= rote: > > > > On 26 Nov 2024, at 19:21, Uros Bizjak wrote: > > > > This patch declares percpu variables in __seg_gs/__seg_fs named AS > > and keeps them named AS qualified until they are dereferenced with > > percpu accessor. This approach enables various compiler check > > for cross-namespace variable assignments. > > [snip] > > > @@ -95,9 +95,19 @@ > > > > #endif /* CONFIG_SMP */ > > > > -#define __my_cpu_type(var) typeof(var) __percpu_seg_override > > -#define __my_cpu_ptr(ptr) (__my_cpu_type(*(ptr))*)(__force uintptr_t)(= ptr) > > -#define __my_cpu_var(var) (*__my_cpu_ptr(&(var))) > > +#if defined(CONFIG_USE_X86_SEG_SUPPORT) && \ > > + defined(CONFIG_CC_HAS_TYPEOF_UNQUAL) && !defined(__CHECKER__) > > Is the __CHECKER__ check because of sparse, as in patch 2/6 ? > If so, do you want to add a similar comment here? Yes, this is the same check. We can declare _percpu variables in __seg_gs named address space only when __typeof_unqual__ is used. I will add a comment in the next revision of the patchset. > Other than that, I went over the different patches and it looks good as > much as I can tell. > > If it means anything, you have for the series > > Acked-by: Nadav Amit > Thanks! Uros.