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 B784BE6918E for ; Fri, 22 Nov 2024 19:43:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1C35D6B0082; Fri, 22 Nov 2024 14:43:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 173B66B0083; Fri, 22 Nov 2024 14:43:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0624F6B0085; Fri, 22 Nov 2024 14:43:50 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id DAD916B0082 for ; Fri, 22 Nov 2024 14:43:50 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 53B771218B8 for ; Fri, 22 Nov 2024 19:43:50 +0000 (UTC) X-FDA: 82814753448.03.A570E95 Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) by imf27.hostedemail.com (Postfix) with ESMTP id 0632040002 for ; Fri, 22 Nov 2024 19:42:48 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=kit245bD; spf=pass (imf27.hostedemail.com: domain of aliceryhl@google.com designates 209.85.221.45 as permitted sender) smtp.mailfrom=aliceryhl@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1732304565; 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=eJlCZBCEC+QLdkXA+z5QeYevcAS/xMMVoy6tah+3/N4=; b=Wy3pHZv7OBfNwzXWe9GpvJ0B+IWjYlx43/JmKwRoWwmKxVHCIHLpqyAB6fWw9gr+CVYl5q 2SOgS2cFZEGd3xxfwApJbgpIDt51vosQ7YY8UlSW4vn+ipz5P/Z+P09KODEV9NeJe/nJgZ Vh7t35IAsQ4IWbzPX3akcc1dKK6kBU0= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1732304565; a=rsa-sha256; cv=none; b=maR2LUgg+rDfKWvvkQ4q5IgOnsj9/UEGSd6c9MyWsFfLLH25dtZ//tw/wkiLug6c3ljdhL gc8OCOf2EOSvaqdXYoqwPJnRZYN9rPrjhP4x84yVIG/1CC6EyFCebtyuyGeIBEuDFIEn/3 kdHIb34+krpj9MnOeJ3UBoKtzJeEPMQ= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=kit245bD; spf=pass (imf27.hostedemail.com: domain of aliceryhl@google.com designates 209.85.221.45 as permitted sender) smtp.mailfrom=aliceryhl@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-3822ec43fb0so1892693f8f.3 for ; Fri, 22 Nov 2024 11:43:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1732304626; x=1732909426; 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=eJlCZBCEC+QLdkXA+z5QeYevcAS/xMMVoy6tah+3/N4=; b=kit245bDsVdQ+n1Sd6NYPYYtqmKuspEeQLQoLrJkPrs3uYXq/eNedHJv630JsO2/WM NJKWfUJKIq6QL5tyZHwSHuJFQUJZVItVFD5oKfiEuAtgGkXWtNqU3uXaLWnwwJz1prUO ghpgiSOM5QLlqmJVWEjLOh/ipaSmiCAFXh5O/0CMuktdFCEIjZ46l/O7ApcvtmDf1vm8 NenfxYiiFKKdXdhrjqF4WXC/rtnRuWt3rQMtJKHg3kdfC0/8hDz1AVlO6a+1VUgVFHA6 4Etp29Zq1X0Oq9dJNKx2RQQMqKQw9Frtg0Yp4XfJeTNlVu8rV7x5R0rftAqQty9QdtDO 8TTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732304626; x=1732909426; 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=eJlCZBCEC+QLdkXA+z5QeYevcAS/xMMVoy6tah+3/N4=; b=a5FFxN+Fnc5C8/h19m/tBKllBYmOUCqoEg9TFzbH9kugpJ7tzIaOz+smjyW7RP7S0U qa2WcB06u8OWfP+x8u9f2Fu1dEmTt/26D+CUh7WjzwYWlrFRJIaur+CfNc9jkIYjOFAq 0nldYYHMH/Brt3pOoF+xxnlczBsny1IhU5aO2pGH6OKnwYtJoNhQdCEVmltpa39qGrgW EvLblRR2//oLFvXKh+E4dGx9hih1llbJdFfJN+RsuzLwLBaMpuwGFh4ObfCU/2awGzOI m09JMhwfhs6eJeJtKoP0GXg5LvqfsaskNT6X3gnof/qsci/F653LfMLR/oldP1mVWVX/ ckpg== X-Forwarded-Encrypted: i=1; AJvYcCVZi+FlaGe5uBmO31elxafvAR0yL+s4qPl++bOhm5YKcrAEL9isexHdxSCp1x9+hg/nXmQ2JOoU8A==@kvack.org X-Gm-Message-State: AOJu0YyeWoY0PGwVldoFIj+yEZYhIxSKbRZe9beHBXm2SkVvVLv1/MZQ BbGQQK1rpBsQ94A9NzMo+ucYkaFx/grGpoOZLv/zHLB/oYZGXTNIFvhcZbOMTGs/QXYOMup96xY /jQRMNj8yfwaNAq2W4LPST+QlR9BPRWGHfwRJ X-Gm-Gg: ASbGncu/yGtgjj35HXVM8ofYet6oG0FMX1rgRtFjgof68/dU5KMI+EIVpnN2D5TNzHR u0qDteCOuFyxPWtJdD9FTviZNBWnQW8Vc X-Google-Smtp-Source: AGHT+IGagOmPkvb5KjYF7uq1VeAC+quJqGk5moXsINYc3vtftlp85Q8+CUP4uSVZpeXzo40AoaSlbIJRvQ7WZ+Sc3Vc= X-Received: by 2002:a05:6000:705:b0:37c:d4f8:3f2e with SMTP id ffacd0b85a97d-38260be6941mr3824128f8f.55.1732304626382; Fri, 22 Nov 2024 11:43:46 -0800 (PST) MIME-Version: 1.0 References: <20241122-vma-v9-0-7127bfcdd54e@google.com> <20241122-vma-v9-8-7127bfcdd54e@google.com> <6740c786.050a0220.31315a.5363@mx.google.com> <6740d8be.050a0220.30b282.4f2e@mx.google.com> In-Reply-To: From: Alice Ryhl Date: Fri, 22 Nov 2024 20:43:33 +0100 Message-ID: Subject: Re: [PATCH v9 8/8] task: rust: rework how current is accessed To: Matthew Wilcox Cc: Boqun Feng , Miguel Ojeda , Lorenzo Stoakes , Vlastimil Babka , John Hubbard , "Liam R. Howlett" , Andrew Morton , Greg Kroah-Hartman , Arnd Bergmann , Christian Brauner , Jann Horn , Suren Baghdasaryan , Alex Gaynor , Gary Guo , =?UTF-8?Q?Bj=C3=B6rn_Roy_Baron?= , Benno Lossin , linux-kernel@vger.kernel.org, linux-mm@kvack.org, rust-for-linux@vger.kernel.org, Andreas Hindborg Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: fm7hpshmy54w1f31rih3mn3ayui6g979 X-Rspam-User: X-Rspamd-Queue-Id: 0632040002 X-Rspamd-Server: rspam02 X-HE-Tag: 1732304568-912964 X-HE-Meta: U2FsdGVkX19ytgfDALDp8mZ20CtwgR3rC3umM/5XSj2BAkywquV6Eb5BRNzSebpxVJ2iggo4QlNyjXIwQ18vxpFeN6X19izhaovygJS0ChpbmG7vngFCRvfUQTFvrOfegsTQQ21BzKrpn37im91dlUeh3cNhhtPLq9Hk03IyMN1tBMzRZopqGIsh5La1lCMBmi2HHlG9mvwhLdUD6DHhfuK8nw4CyvURwecZd1eHHOQcCAvkZKnEN9XeN7LxrDbHtuECf48BsKpggCmDWb0bRc/cv9dRfHceoUdrWPv5KGf19vPGyPZl7WCbpgd3i+JdX7ojij6YnjePkLOB5LE426+ePLsKDbXYGocuTuEnit/ghupcDgn2dAYkpW3eU7twsqsE8PPfoJeI1Glo23tBApkdG7iALdbtAaHcIVZqzErdcwnu3WyI8sEets5YbEg/RQ9tOkEt/65DtIA2nvTUDP+zYdMpZYkCsYcWi5KiSgXmyaPyLqiwMs+9BX1i9JaOXB4vtpCM9q2y0d9nYYVL4TmZ+2zQiYmiwssAjnj0/zn2JEZr7xpJzAEe6kmrr6OhgQ4WhqL0tVAEQAl6DxDVP/1nqkxkfnxvpYUiKGB00PoFAoF+7CAcb4e4phUautVXLNdOBJUF4c65DuzCObfEuUSzhI/JW3qMgHc01W9vTiTHV2qoynOx+sxgZTfCzwEiqbTHG0T4ejts+Z3T/ExETRspn4bHYD1xi2t/doFc7FNFoHY1asW3cWO2pblbkaMD6tsRf3GgDBIIuk6Cq3pYD97cqPEie+/McJX1VbogEpKW0R1Ho7v/LcmlKWZAQmC0tEJ8IVUDoCCZscYS4o4OLASeZ8ACAHJrhX7zi5mvkJssqn4i+s0vvMTcRbOx29oW56Q/+fjZMbK3xgB9QgQ1KKDupj5BnQ3ahTtSIjV7/tfvQiicbBIwsqfUM5JAWpXeB4TZWa8OskOJoWkmL47 j1ZmULN8 GkiWxeYMNSg4kPKuBc3C2lc4uw9sdIz+8538/PpOnXgmS+9T/zsuKDcxGoGAVdxfVLHDgPlr7eH8fq5V8sBliLuyN0Nf3r9EFtl4ounaSNygaPdD/DiqV6FrtqKoZovsvLgktoUZ28+DrBrimuMCGx88E3bvb71S/xwDAmMn3nYqjZW+PUj6UtupvuhrMacAEQjwSoTSml233fQPMQNpsqJffpS+iihUVPSrNte1aAKka1xgEcuxQiNzZOSwvEUvajrLXGF/24xSanvKUh0LUbt3PYw9+oYTKbdej0DuU5eb93GxRXiQKRSC5FOm3Y/4kUlgQArWFJR0Kw74= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000004, 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 22, 2024 at 8:30=E2=80=AFPM Matthew Wilcox wrote: > > On Fri, Nov 22, 2024 at 11:17:15AM -0800, Boqun Feng wrote: > > > I don't think this is a problem? As long as a thread exists somewhere > > > with `current` being equal to the task, we should be fine? > > > > > > > I think I had a misunderstanding on what you meant by "operations > > that are only valid on the current task", you mean these operations can > > be run by other threads, but it has to be *on* a task_struct that's > > "currently running", right? BTW, you probably want to reword a bit, > > because the "current" task may be blocked, so technically it's not > > "running". > > > > Basically, the operations that `CurrentTask` have are the methods that > > are safe to call (even on a different thread) for the "current" task, a= s > > long as it exists (not dead or exited). In that definition, not being > > `Sync` is fine. > > > > But I have to admit I'm a bit worried that people may be confused, and > > add new methods that can be only run by the current thread in the > > future. > > I agree, I think CurrentTask should refer to "current". Or we'll > confuse everyone. Would ActiveTask be a good name for this CurrentTask? I mean, it does refer to current. Any time you have a `&CurrentTask`, then you know that you got the pointer by reading the value of `current`, and that the task you got it from hasn't returned to userspace (or otherwise exited) yet. But the name ActiveTask also makes sense I guess. Alice