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 8D271C04A6A for ; Thu, 27 Jul 2023 11:26:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C70F36B0074; Thu, 27 Jul 2023 07:26:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C214D6B0075; Thu, 27 Jul 2023 07:26:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AE8EA6B007D; Thu, 27 Jul 2023 07:26:25 -0400 (EDT) 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 A01556B0074 for ; Thu, 27 Jul 2023 07:26:25 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 69D2180481 for ; Thu, 27 Jul 2023 11:26:25 +0000 (UTC) X-FDA: 81057163530.24.84BBEB9 Received: from mail-ed1-f54.google.com (mail-ed1-f54.google.com [209.85.208.54]) by imf03.hostedemail.com (Postfix) with ESMTP id 9094520020 for ; Thu, 27 Jul 2023 11:26:23 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=tJlzpoXY; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf03.hostedemail.com: domain of emmir@google.com designates 209.85.208.54 as permitted sender) smtp.mailfrom=emmir@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1690457183; 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=ciA0d0f17XmFG0XwIFCtvuCfkBXh3LlkTiYPN1dYe+Y=; b=negVv88GSPzjcOTUvdoOjCOY1G9LpnGOBFXPyDGcy+tLllQAh0S3NttOwLfXr6q3MqvsiD Y1hebX0DCLzNP8uCM8BgK6d7RmDvIs9hLV/dAllYEd4QFKS+ohrq9A21scitDfycu/w6k9 UVrHpUpBkemUC5Bxas9Fr2fliT+voWM= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=tJlzpoXY; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf03.hostedemail.com: domain of emmir@google.com designates 209.85.208.54 as permitted sender) smtp.mailfrom=emmir@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1690457183; a=rsa-sha256; cv=none; b=1lPkhrYdowUTzCz4WeF84aG5xCHBIGk/b2ryfCdZJXrsq+u1K4h1mFBWXasJ4YrLA77NAT MapkorhRiFfP9ucNKgXbH1f11lHZPtdW3voWbJbhHq0KovMQ8DL7kh7nTyFQy8YpZMx1k3 z8H/XWQCoRcBlem9evtRHAsb/cyfdEs= Received: by mail-ed1-f54.google.com with SMTP id 4fb4d7f45d1cf-5223910acf2so11292a12.0 for ; Thu, 27 Jul 2023 04:26:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1690457182; x=1691061982; 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=ciA0d0f17XmFG0XwIFCtvuCfkBXh3LlkTiYPN1dYe+Y=; b=tJlzpoXYcQoY9q62eGnq5YPAAwvPwnh8kmDb+8GMOL71T2p30m+4EJ9WaU/qDbDF/5 sXI93AZ4Al84/MWSGv6HKfhQKshHJOIBukPUWYTTpjz3TjOI3TxvfWhW6JOmLIp0wro3 x86BFhwkDQmJP4X/gFd9VfuM3/J2u0xELsuzbtDo7FSTIas6gGEk6UKI0kxCdqomvzGJ aHoY4dr0LR1xJ8T5sQRRheWk6M4pmLkKmaHlZIgunfkL7kkIXY4MnwJ3pfzHma0zwrek udVIrB7yvGwKOB5oIYJLqM/jIfe5PQVFjYlXh3ZeQr2LXKzxlDL7o7TP+89IkfgRdSXH Xl0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1690457182; x=1691061982; 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=ciA0d0f17XmFG0XwIFCtvuCfkBXh3LlkTiYPN1dYe+Y=; b=WuFclZaMmxVgmgs9LwL7hZBTAALQiIxraUxdfaYyEWn3CmaCYZ64AvI4CQqjHoohhr PAloPciBh64Nn/EB9oZ+CVVjWUyZ0HakT0rgwwKazy45aG91BNzZ3dskzRAjNhhsZtWM vfNzf0kCb9kqX2s2astuqdIHtuUJXxK57e5gf8hOKvtGsqJ9IYMvULz9AqKXX70ejfRW +WMPVFUGLmlATm0IXZ3RoPw1R/fctOAODK3C4NiZJogsp1uVchcKDTN5EefC4Clc6swe 3aWqeD6KOcH//DBIyvL49+GxZZSdkHDjJ/t45AtGhiGTnfXQ0VeJI96x/U79VSUI6nGv mqzQ== X-Gm-Message-State: ABy/qLY7w7A7LsI9FhgAXlL7UoVq398gA8dwRMoXwIQPKcUlaf3U2urP Sd9ScvkMuGmKB+QChDJ2CHK66YKxcv3WQ3cow27ETg== X-Google-Smtp-Source: APBJJlFswdAxEynor9flG/zwO9VwsfMLSmQuNHR6pqQhqCCyuy9JPMlHSoZGyB/3PISkp/LNC/xvk4mrDwNS/cShlew= X-Received: by 2002:a50:d0cc:0:b0:521:f642:7183 with SMTP id g12-20020a50d0cc000000b00521f6427183mr78381edf.1.1690457182010; Thu, 27 Jul 2023 04:26:22 -0700 (PDT) MIME-Version: 1.0 References: <20230713101415.108875-6-usama.anjum@collabora.com> <7eedf953-7cf6-c342-8fa8-b7626d69ab63@collabora.com> <382f4435-2088-08ce-20e9-bc1a15050861@collabora.com> <44eddc7d-fd68-1595-7e4f-e196abe37311@collabora.com> <1afedab8-5929-61e5-b0da-9c70dc01c254@collabora.com> <89c09085-19ab-462b-e3be-b4e492a85899@collabora.com> In-Reply-To: <89c09085-19ab-462b-e3be-b4e492a85899@collabora.com> From: =?UTF-8?B?TWljaGHFgiBNaXJvc8WCYXc=?= Date: Thu, 27 Jul 2023 13:26:10 +0200 Message-ID: Subject: Re: [v3] fs/proc/task_mmu: Implement IOCTL for efficient page table scanning To: Muhammad Usama Anjum Cc: "Kirill A. Shutemov" , =?UTF-8?B?TWljaGHFgiBNaXJvc8WCYXc=?= , Andrei Vagin , Danylo Mocherniuk , Alex Sierra , Alexander Viro , Andrew Morton , Axel Rasmussen , Christian Brauner , Cyrill Gorcunov , Dan Williams , David Hildenbrand , Greg KH , "Gustavo A . R . Silva" , "Liam R . Howlett" , Matthew Wilcox , Mike Rapoport , Nadav Amit , Pasha Tatashin , Paul Gofman , Peter Xu , Shuah Khan , Suren Baghdasaryan , Vlastimil Babka , Yang Shi , Yun Zhou , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, kernel@collabora.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 9094520020 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: pqbcrsj16nowu4ibqhbdjfrieq9zpjsk X-HE-Tag: 1690457183-725209 X-HE-Meta: U2FsdGVkX19NGQcLqItEZyKma/SO1RLUE9ilIzkKdaQYFFzxABhhmcnpBh0Uq5OzrMMZiPN7C+RGbsUfie967imo8Xo+FxUa/Jvu/HhyY/5mR/k1e50ryHRL06CngPpcJQYSyGlrFLk2ARTD0gBozgBSvgcd0Y2tA933newP8fZlyPRDHojvkSa9PZAN8mTuQQMilcVhEy9t1Xza08Uej4Kbw8ZU4ECgSCz2qUVr67fMftRC0UHm4f0wTinwL7vPmojp5NeodyFGXqRz0StKtbXST6I7aykPj+JXgsJYNWMQ14qdk5dlHdjMrUhe0quSjzbqvTxrFRzLPo4wWTQ6EOJ8bVfRVAkJRbIm9L72o7uOMfeWhn5K/T7VHpxTHPaGMFZqAW84a2Vk7mFlyT8iv81sDzkxI4stbrwSnavmMJTubtipLCTHcrlid1TY87B/Y1LcYNvO7u0HYDzVUnKgC66i6lRf+3fzfDQQErJqnCJw0HFwKWiAlUvXqUYWVws7y7E1FNRes7wpZ/rtUhyP7iWgTAILGhWEg3+FjsKoPiNqQ6Ghp9dFrxr4oq2lhaPetGxfspEwJ4wUb8WoOOECA+89kFhYav5LXA2NhYiDLPPl2DynndNBIS05IzOluN+2j7/yE4CxU44qN90+OSklUv5KSeLHSs5/eNIXloK2YXtvARXKSPGP5iuzU7iS49R355yYnB0LCbK+Ib9Fi9JD6qKuaKZ4a91Kg/6k9lK+kuljoJq4CbdCMB2wQMoowpF8Aj64EqDE6BwRU4Fw//pDVkSHKCHq+p+9kEowS7ipUYG9ovm6gdOB2jlyMfFZnAJiOCyFuNqcZDmKiSWVUUyvDK7EdBGcAzXSfcOTPcup/82hruKlNog7rT0obvHul1mNISqyLu89PrqVmrO4tNN1ebUoKjvtirt0hXn6inC9qTKgaaiDByCOHbqTjpk71afLwNUnVtUifzvwEdZzzir 30dilEja pFlLTlyy66VzEZkJ8ZupQtrxSvfa+5bu2JmFtz4WDnibrJrNZA3VhbkElYra8E8yGSrtzOB8uIpVUUXpZh/Y+Nt/SooQJY2a1q40xZge4Nfnx2JXRoRFdzSaH5SE84/6wPVyML2ZlEGRxI3EPKU0SJ/Dikymin9jMy9Tic1yJGp4IOR2wsniMFc0iXRnZ9QU/CS8NFIgqYTuzzRoiXBs0NvQoNPt/aJ89AYk94FFHIKWHuXpcclEoSPIQwzi6M6HfNmHCudNLjF0n6ybwJiXPU1fVhLllNZPNG5gC5vo/GFeCCjui8ARew0LjFHDVmu1XozM2UAVpC8hTyrlJP7++r9tKy7GzmMkfrIyXR7poOidmGAsKyld/eBBzhpWnC5bG+fU+E3GPOc5VPkTUCowPmFPwuwGdg5v6jrjI+p7rRjSrOhwenpKBadGRNw== 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: On Thu, 27 Jul 2023 at 10:03, Muhammad Usama Anjum wrote: > On 7/27/23 2:10=E2=80=AFAM, Micha=C5=82 Miros=C5=82aw wrote: > > On Wed, 26 Jul 2023 at 10:34, Muhammad Usama Anjum > > wrote: > >> On 7/25/23 11:05=E2=80=AFPM, Micha=C5=82 Miros=C5=82aw wrote: > >>> On Tue, 25 Jul 2023 at 11:11, Muhammad Usama Anjum > >>> wrote: [...] > >>> 2. For the address tagging part I'd prefer someone who knows how this > >>> is used take a look. We're ignoring the tag (but clear it on return i= n > >>> ->start) - so it doesn't matter for the ioctl() itself. > >> I've added Kirill if he can give his thoughts about tagged memory. > >> > >> Right now we are removing the tags from all 3 pointers (start, end, ve= c) > >> before using the pointers on kernel side. But we are overwriting and > >> writing the walk ending address in start which user can read/use. > >> > >> I think we shouldn't over-write the start (and its tag) and instead re= turn > >> the ending walk address in new variable, walk_end. > > > > The overwrite of `start` is making the ioctl restart (continuation) > > easier to handle. I prefer the current way, but it's not a strong > > opinion. > We shouldn't overwrite the start if we aren't gonna put the correct tag. = So > I've resorted to adding another variable `walk_end` to return the walk > ending address. Yes. We have two options: 1. add new field and have the userspace check it and update start itself to continue the scan, or: 2. reconstruct the tag from either orignal `start` or `end` and have the userspace re-set `start` if it wants to restart the scan instead of continuing. (the second one, using `end`'s tag, might be the easiest for userspace, as it can check `start` =3D=3D `end` when deciding to continue or restart). Best Regards Micha=C5=82 Miros=C5=82aw