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]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1C06DCAC5B0 for ; Fri, 3 Oct 2025 01:12:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7427C8E0002; Thu, 2 Oct 2025 21:12:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6F32E8E0001; Thu, 2 Oct 2025 21:12:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5BA248E0002; Thu, 2 Oct 2025 21:12:12 -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 461308E0001 for ; Thu, 2 Oct 2025 21:12:12 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id EAC03BA6FB for ; Fri, 3 Oct 2025 01:12:11 +0000 (UTC) X-FDA: 83955026862.09.8CE442C Received: from invmail4.hynix.com (exvmail4.skhynix.com [166.125.252.92]) by imf11.hostedemail.com (Postfix) with ESMTP id 4EE5840002 for ; Fri, 3 Oct 2025 01:12:08 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; spf=pass (imf11.hostedemail.com: domain of byungchul@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=byungchul@sk.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1759453930; 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; bh=sMkLWwSH11x6aVkNl2Lmy02LeseugCtOjlz21VQYeSg=; b=gQ+INI4XRPUHfIQIGHsvd4cUjhNDW9MVpwoByzEYgBFgU8xis7QlducJUIc7UXM9LKQTQ7 HqKqfhVcn+cmPe66vn6vgar14bULqK9MYSI7VAFp4BwDsoxwNjt8GspZvKY9TTspwcexYi vlwWYz6F7ONBIFEClpxymmqJ2MtX4pM= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=none; spf=pass (imf11.hostedemail.com: domain of byungchul@sk.com designates 166.125.252.92 as permitted sender) smtp.mailfrom=byungchul@sk.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1759453930; a=rsa-sha256; cv=none; b=FzLWKkxstvuSCXJPdbuo3dzTiCN7e42zmaEhXN7pUDw+bRivi5BeU9Tto2TuqicksU/VKi u/a+XtzTzt1KcTNs2c3OHGv2m9yV8sa9p18/9EcB5IZVZkJ4N8wiI4PhkCuCSmWGgw1tfX 0L0+zRJl6Wnigz8Ri8sAtfBRooBRJt8= X-AuditID: a67dfc5b-c45ff70000001609-93-68df22e7fb7d Date: Fri, 3 Oct 2025 10:12:01 +0900 From: Byungchul Park To: Dave Hansen Cc: linux-kernel@vger.kernel.org, kernel_team@skhynix.com, torvalds@linux-foundation.org, damien.lemoal@opensource.wdc.com, linux-ide@vger.kernel.org, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, mingo@redhat.com, peterz@infradead.org, will@kernel.org, tglx@linutronix.de, rostedt@goodmis.org, joel@joelfernandes.org, sashal@kernel.org, daniel.vetter@ffwll.ch, duyuyang@gmail.com, johannes.berg@intel.com, tj@kernel.org, tytso@mit.edu, willy@infradead.org, david@fromorbit.com, amir73il@gmail.com, gregkh@linuxfoundation.org, kernel-team@lge.com, linux-mm@kvack.org, akpm@linux-foundation.org, mhocko@kernel.org, minchan@kernel.org, hannes@cmpxchg.org, vdavydov.dev@gmail.com, sj@kernel.org, jglisse@redhat.com, dennis@kernel.org, cl@linux.com, penberg@kernel.org, rientjes@google.com, vbabka@suse.cz, ngupta@vflare.org, linux-block@vger.kernel.org, josef@toxicpanda.com, linux-fsdevel@vger.kernel.org, jack@suse.cz, jlayton@kernel.org, dan.j.williams@intel.com, hch@infradead.org, djwong@kernel.org, dri-devel@lists.freedesktop.org, rodrigosiqueiramelo@gmail.com, melissa.srw@gmail.com, hamohammed.sa@gmail.com, harry.yoo@oracle.com, chris.p.wilson@intel.com, gwan-gyeong.mun@intel.com, max.byungchul.park@gmail.com, boqun.feng@gmail.com, longman@redhat.com, yunseong.kim@ericsson.com, ysk@kzalloc.com, yeoreum.yun@arm.com, netdev@vger.kernel.org, matthew.brost@intel.com, her0gyugyu@gmail.com, corbet@lwn.net, catalin.marinas@arm.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org, sumit.semwal@linaro.org, gustavo@padovan.org, christian.koenig@amd.com, andi.shyti@kernel.org, arnd@arndb.de, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, rppt@kernel.org, surenb@google.com, mcgrof@kernel.org, petr.pavlu@suse.com, da.gomez@kernel.org, samitolvanen@google.com, paulmck@kernel.org, frederic@kernel.org, neeraj.upadhyay@kernel.org, joelagnelf@nvidia.com, josh@joshtriplett.org, urezki@gmail.com, mathieu.desnoyers@efficios.com, jiangshanlai@gmail.com, qiang.zhang@linux.dev, juri.lelli@redhat.com, vincent.guittot@linaro.org, dietmar.eggemann@arm.com, bsegall@google.com, mgorman@suse.de, vschneid@redhat.com, chuck.lever@oracle.com, neil@brown.name, okorniev@redhat.com, Dai.Ngo@oracle.com, tom@talpey.com, trondmy@kernel.org, anna@kernel.org, kees@kernel.org, bigeasy@linutronix.de, clrkwllms@kernel.org, mark.rutland@arm.com, ada.coupriediaz@arm.com, kristina.martsenko@arm.com, wangkefeng.wang@huawei.com, broonie@kernel.org, kevin.brodsky@arm.com, dwmw@amazon.co.uk, shakeel.butt@linux.dev, ast@kernel.org, ziy@nvidia.com, yuzhao@google.com, baolin.wang@linux.alibaba.com, usamaarif642@gmail.com, joel.granados@kernel.org, richard.weiyang@gmail.com, geert+renesas@glider.be, tim.c.chen@linux.intel.com, linux@treblig.org, alexander.shishkin@linux.intel.com, lillian@star-ark.net, chenhuacai@kernel.org, francesco@valla.it, guoweikang.kernel@gmail.com, link@vivo.com, jpoimboe@kernel.org, masahiroy@kernel.org, brauner@kernel.org, thomas.weissschuh@linutronix.de, oleg@redhat.com, mjguzik@gmail.com, andrii@kernel.org, wangfushuai@baidu.com, linux-doc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org, linaro-mm-sig@lists.linaro.org, linux-i2c@vger.kernel.org, linux-arch@vger.kernel.org, linux-modules@vger.kernel.org, rcu@vger.kernel.org, linux-nfs@vger.kernel.org, linux-rt-devel@lists.linux.dev Subject: Re: [PATCH v17 08/47] x86_64, dept: add support CONFIG_ARCH_HAS_DEPT_SUPPORT to x86_64 Message-ID: <20251003011201.GD75385@system.software.com> References: <20251002081247.51255-1-byungchul@sk.com> <20251002081247.51255-9-byungchul@sk.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) X-Brightmail-Tracker: H4sIAAAAAAAAA02Se0xbdRTH/d03dXV3V9yuEGOsS2ZQplP+OBiHMyTuZtEEsz802x+jsTe2 WXmkMBxGk85J1+Ef1s4xW2C2bDBoy8aKMl6dhYVqh83oXtQNKAxsIW0lIo/g+rCVLO6fk0/y /Z7vOTk5DM41UzmMqrxa1JTL1TJKQkhim6z5YVlQ+VrXQAE0XXJQoHeaSBi7aEcQXNEjWHvY iENdX4qA5fX7NKRcHgQNfiMOkWtLCM4sHCNgYWQvxIIDJKQmwxiMr0YRtM0lMZhzn0CQaDgM P7R0U2CdmcTh9soiBd7TX1MQ8zdh8GcXBZYvXSQ0NxrTsc1OAvqm+2nwR+IYTDQYMbA734dg W4iAUUMLlh5HQcPlbXC6cwCDRt8tEh60m2mIz+yClKUCPPYwDRdjN0jwTt0lIRIyUnBFO02D 8/cRBMu3ZzDQ968Q4Lr3Mlh15wkwnZ2gYNDlJUCfWEZwq7+JgilHigRt41r6CO5REm7axwi4 FA5gMOr5lYAb/Z0ktI77MZiZDpDQ7fsN36MQbN09mFB3M0EJjrMOJNQZ0uVadBEXWkejlOBa tRDCt758oc88SQsW5xGhuz1PODe4gAn3IrsFp+0kJTiXjLRgfTiPl7xyQPKWQlSrakTNq0Wl EqV3LIFVnso+qjMlKS0ybK5HWQzPFvArQzH0iHXXT/7HBLudX7vci2WYYnfwgcA6nuHsNF/v uEDXIwmDs1dyef+Ps2mBYZ5m5Xzozo6MR8oCb/DZqYyHY79DvLElSG8IW3ivaY7IMM7m8YHk Apbpxdlc/kKSyWAWu5vvGXwy43iGfZF39/yCbaw2lcXXd3y4wc/yQ+0BwoBY82Oh5sdCzf+H WhBuQ5yqvKZMrlIX7FTWlquO7vy4osyJ0k/b9kX8YC9aGts/jFgGyTZJhcopJUfKa6pqy4YR z+CybGlp+4SSkyrktZ+JmopDmiNqsWoY5TKEbJv09dVPFRz7ibxaPCyKlaLmkYoxWTlaVO0u jL70zh9WWR6S/1zizv9pqfDvu0WzHeuHikb2DTTFTcXOXspTsnjc8sAR/Yutzz0Vun/OFi9W zO99L1GjPcO98Oa+b54oPnBnz0ceXVdrJ8eWbH3jK3Joywf6f/Yn3y6dP17xec7VY9yJ2fDW qxH9eFSnfs5X+vy73y8/FbIVCptlRJVSvisP11TJ/wV5WqOHsAMAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA02SbUxbZRTHfe69fe6lrnpX67gBP1UXMpZtLvHlTDddNJEnJhK/kTgj3Gx3 tgItayeOJTMwKOJ8oRTbhpa5yrKCwAaDiiBjYTSyAGsEYY4orLAVWDOQbCuU8lLsjTHuy8nv 5P/7J+fD4Wj1uiKF0xuOSyaDmKfFSkaZ+XrprjltUPdiiz8J/ijpZWApUsFAbUszhoq2GgUM X2pCEFyqQBBdc9Ng6dpkYMPWz0Ik9hcLmz39CBwjNhqafSUUPGqNY7jvf4jAPh3C4AyXMLDo /RqBa9bNQvjXDFgIditgc3KOglvL8wi8oTgFod4vEGw4cuFcXTuGtcBvNDjtwwh+mJ6k4WF4 CsG91oTh67+NoKfhNIYZ6080jIaegrGlRQwD9q8wLIzUUvB3KwbP6R4FnHXbEJSeb8HgONvG QNfULyyM3F+nYMJho6Cp7T0IemcZGLLWUYkjE9blZHA7S6nEuEeB/WI3BTFvIws3zk8w4C3e Du7AqALuNLhYWJ/eC5seI/Q3zbEwWWlnDjoQiVq+ZUhjewdFLL9vYNL8fTMia6s2RCIXSmli sSZW//wiTcraPyMXhuYxWV26iUnPsochg3UCqQrsIl2uSZaUXf2Tff+1D5T7j0h5+kLJtOeN HKVuYHiDKqjWnCivieNiZH36DEriBP4loXzwSyQzw78gRC93UjJjPk0YH4/RMmsSPPhjPXsG KTma/zlVGPHdTQQc9wwvCrM302RHxYNgDTRh2VHz3yHBVhdk/w22CgM1IUZmmk8XxuNhSu7S fKpQH+dkTOIPCB1XnpSNZ/nnhd6O65QVqVyPlV2PlV3/lz2IbkQavaEwX9TnvbzbnKsrMuhP 7D5szG9DiZ/0nlqv6kSR0Yw+xHNIu0VFCm7r1Aqx0FyU34cEjtZqVDkNEzq16ohYdFIyGbNN n+ZJ5j6UyjHaZNW7WVKOmv9YPC7lSlKBZPovpbiklGL0+cyHHdcisU+iD7jgmwaDfVv4Wpbx HW9a7luDW/btq88m16PPKX3dEf+NU+LBsnFjdWwl+eITH1UGZtPT9vi5ZRgdW3DGdmRGs1Nq pjKPDe089vahVysOvbIy1b7jlm9mNStc2deycrRz9ZtqV7hkTOPMliyXarfXejLCuNxapdUy Zp24N502mcV/AI9Fdl+PAwAA X-CFilter-Loop: Reflected X-Rspamd-Queue-Id: 4EE5840002 X-Rspam-User: X-Rspamd-Server: rspam07 X-Stat-Signature: a3u3pwd3rwxpex7mfm3iwepg5xjqqe3a X-HE-Tag: 1759453928-389669 X-HE-Meta: U2FsdGVkX19LS2l0UiTCbvXwTSGDRLbfD2m3Sp+M5DPHuE5zIbNhkhHZjNJXMJ+bWx/KEZLHJQ5SPR4bre6Y8+oq2d4kAQJTk45f2dU/xyd3XmHR0wsqrxXG69DkJf3HLpg4Z1DkV3j1jgubwTJPV6SZAlrQSgjqb7YMzcyeNZsvfiv1hOF5NsNs+YyVyx8ZjraBEJplQu/o2uZ96l0DG+8xdUnDEoATAykBPAsM8TSmAAbmGW8VR+4m17WnLNoqZ/WjGvEG3qhNonT+Dbxl9cBYA0fJ7fj1qpriMzCWWu8eFPhkZE1/TtaCS8HqCbR0hj2Tv9cIThxT4vN669YRx5TLCITzIAAyf8tKwZHXGzejrFWxsE8DKBpOGDTZjwTOr3mlQcsdJiiIzvaZ2ky4S8sXAr7xL97cjXDQpLfY53gGDJtrccuqDT4kQKIBmKZF9BEf7vNih/FqcMecomqXf4+MWlqi/Mm9mwUbnHnpKh+fM3pBzPQrugzUP3gYtX9eRhtab3cOJbZ6tpxhkygOBRReusnW9IxvBt9qH9Y4oyQBYsmbFslWQyUcuXnkCjLo4TlG2FUrCpFPIb4MiwRL0IJoUeJV2N9kExXMJG5LShZWf1lpe2ZDodZwNNONJl8hdyXQsBwevYv0jSJH9c0wbKHFD4MKed0JRS+voR6C51T5TYmngtA2BFcFAsOwviLlxj+FXwR7dYgxQ2a5q+vNNno79C/wTHQBQpXPOKDBa+QH9YSP3ZZik8N5DqB2KYnIYMb2v2tSdupuOVrx4a6Ix3MRhNVacWyOy3iwfCeEywl/LP4qLFlWThbGHKQeowCgZaJojWQ6DP2Vy6UvutJOyjFywWd/qfgvIERB7bIlZgoMlskSKtKnfwAATK0V1Qe1yI3MNRUJ1lFRlBRxCcrffZ74nHhtwoJ7ckaXYAz1T70grBGQBaUCSEBNkNU6qhldPWHP6xpur0+r/X4NWKc 9w2/FJW4 F8rQjrRxABK0zMsiV6o6AvNujXrdxZsfaAz00/pUhOTKOABk= 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, Oct 02, 2025 at 08:22:29AM -0700, Dave Hansen wrote: > On 10/2/25 01:12, Byungchul Park wrote: > > dept needs to notice every entrance from user to kernel mode to treat > > every kernel context independently when tracking wait-event dependencies. > > Roughly, system call and user oriented fault are the cases. > > "Roughly"? I will change it to a better one. > > #define __SYSCALL(nr, sym) extern long __x64_##sym(const struct pt_regs *); > > #define __SYSCALL_NORETURN(nr, sym) extern long __noreturn __x64_##sym(const struct pt_regs *); > > @@ -86,6 +87,12 @@ static __always_inline bool do_syscall_x32(struct pt_regs *regs, int nr) > > /* Returns true to return using SYSRET, or false to use IRET */ > > __visible noinstr bool do_syscall_64(struct pt_regs *regs, int nr) > > { > > + /* > > + * This is a system call from user mode. Make dept work with a > > + * new kernel mode context. > > + */ > > + dept_update_cxt(); > > + > > add_random_kstack_offset(); > > nr = syscall_enter_from_user_mode(regs, nr); > > Please take a look in syscall_enter_from_user_mode(). You'll see the > quite nicely-named function: enter_from_user_mode(). That might be a > nice place to put code that you want to run when the kernel is entered > from user mode. I wanted to put dept_update_cxt() to the very beginning of c code but.. yeah enter_from_user_mode() looks fine or even better. Thanks a lot. > > diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c > > index 998bd807fc7b..017edb75f0a0 100644 > > --- a/arch/x86/mm/fault.c > > +++ b/arch/x86/mm/fault.c > > @@ -19,6 +19,7 @@ > > #include > > #include /* find_and_lock_vma() */ > > #include > > +#include > > > > #include /* boot_cpu_has, ... */ > > #include /* dotraplinkage, ... */ > > @@ -1219,6 +1220,12 @@ void do_user_addr_fault(struct pt_regs *regs, > > tsk = current; > > mm = tsk->mm; > > > > + /* > > + * This fault comes from user mode. Make dept work with a new > > + * kernel mode context. > > + */ > > + dept_update_cxt(); > No, this fault does not come from user mode. That's why we call it "user > addr" fault, not "user mode" fault. You end up here if, for instance, > the kernel faults doing a copy_from_user(). My bad. Thank you. I will fix it. Thank you very much. Byungchul