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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 49E49C00528 for ; Tue, 25 Jul 2023 07:27:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232651AbjGYH10 (ORCPT ); Tue, 25 Jul 2023 03:27:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45450 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232548AbjGYH0d (ORCPT ); Tue, 25 Jul 2023 03:26:33 -0400 Received: from madras.collabora.co.uk (madras.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e5ab]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B703683; Tue, 25 Jul 2023 00:24:06 -0700 (PDT) Received: from [192.168.100.7] (unknown [59.103.217.18]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: usama.anjum) by madras.collabora.co.uk (Postfix) with ESMTPSA id DF1AA6606FD7; Tue, 25 Jul 2023 08:23:58 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1690269844; bh=3mGd315Qwcme3rS82Un7xl/1+XxLZPbpKCSHXGorN10=; h=Date:Cc:Subject:To:References:From:In-Reply-To:From; b=GfQfN8TALhBlEzVmfxbX+9ZZ0cz3XTr8HDduojmSsc/5L8dKupHMYqTBXZkINp8io DEcoYnIFwrA8aHFsPcFrFFpMFwTRhosje0BRv2bMr7Xv9WdtadfiS7VdE76ErkyV6F YBtj1SIp9wdMevCUi9uMiWRTewhZE8ZBNq93wQ1ezOrpbTcRRkEHxp5YDFlQEmiQH4 obmbLy0w+YyTZY+kw/hOvl1bQk/a6DKDtOtu0l3UAuDWihu+GpIGqiAHqbdY/yj5Xz 5BVm/G/d1CCoz9rsxyUz8S/HIF72J2GXMWWUSrj0VbTheSHMIOIaWXH9Yrql3PKk06 3VGmcZlrxuSeA== Message-ID: Date: Tue, 25 Jul 2023 12:23:54 +0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Cc: Muhammad Usama Anjum , =?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 Subject: Re: [v2] fs/proc/task_mmu: Implement IOCTL for efficient page table scanning To: =?UTF-8?B?TWljaGHFgiBNaXJvc8WCYXc=?= 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> Content-Language: en-US From: Muhammad Usama Anjum In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kselftest@vger.kernel.org On 7/24/23 9:10 PM, Michał Mirosław wrote: [...]>>>> @@ -2219,22 +2225,24 @@ static int pagemap_scan_get_args(struct pm_scan_arg >>>> *arg, >>>> arg->category_anyof_mask | arg->return_mask) & ~PM_SCAN_CATEGORIES) >>>> return -EINVAL; >>>> >>>> - start = untagged_addr((unsigned long)arg->start); >>>> - end = untagged_addr((unsigned long)arg->end); >>>> - vec = untagged_addr((unsigned long)arg->vec); >>>> + arg->start = untagged_addr((unsigned long)arg->start); >>>> + arg->end = untagged_addr((unsigned long)arg->end); >>>> + arg->vec = untagged_addr((unsigned long)arg->vec); >>> >>> BTW, We should we keep the tag in args writeback(). >> Sorry what? >> After this function, the start, end and vec would be used. We need to make >> sure that the address are untagged before that. > > We do write back the address the walk ended at to arg->start in > userspace. This pointer I think needs the tag reconstructed so that > retrying the ioctl() will be possible. Even if we reconstruct the tag for end and vec, We need to update the start address. Can we just put same tag as original start in it? I'm not sure. -- BR, Muhammad Usama Anjum