Received: by 2002:a05:6358:701b:b0:131:369:b2a3 with SMTP id 27csp4126213rwo; Tue, 25 Jul 2023 00:37:11 -0700 (PDT) X-Google-Smtp-Source: APBJJlHHy2ep0pY6CdvQPRr1SGVb3JR1d5pos0DQXGWlcPRw20DQ3DUCI0DWU8+BaRoMGoukJaYd X-Received: by 2002:a17:906:cc0e:b0:99b:4a29:fb6a with SMTP id ml14-20020a170906cc0e00b0099b4a29fb6amr12073367ejb.59.1690270630915; Tue, 25 Jul 2023 00:37:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690270630; cv=none; d=google.com; s=arc-20160816; b=mtOBqyoxljhm8+04QsQ9ROUokoaYRuP2PwaNckpmT9t8PkgbyWzT6pZy4g26Gxg9Dk Rdw/uxBSuhYzOVBO4uMXHwkraYc/5A7qHYaymOc5I9PDMirfdaOWtHs38qsi5Qgo1TUU lYwxTNeVkkeDf2RVJcurhQtHt6BYMMXEl4PEzDvfA/zQl2xskBl1vKEAxEI38lL7CfO2 TEtDJmittcbLpGe9ubatmjypDZG3a1ql+ONFdlUcnKAKLSb9LElAafZBnc4wbRC5M0Vx XavYRdyjb4z0wOhE7vIGMGmQooas95tGRes/aEFsgjaHVQDaLNkbndjoU6UtzBT4auoQ ZiFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :content-language:references:to:subject:cc:user-agent:mime-version :date:message-id:dkim-signature; bh=0qcOP2BvNu/4XkPslxvRhGHHyb+eipRTQvEo9hsK1N0=; fh=EHmmcOh8Tf40ZnyaiKcYM9/yq0iZDQFZTawBKal4fQ4=; b=OM4bqOeeQkJ+GNPFjSyb6YM4tkDqfkXkxbxs5cZyTdJf8U2/tnTQdor2DZQmDHsEPF V1VfPH/HpBrGKE1xutHyn/78AA5PVGN0+p6Sxg0G5DNT45btJvW7hI6YX026YUbckYfX X949AsxC8YddsBJ9ZEX5k3IYbb4KxxIjTzQm9Zml3kS/Wg7ubrqIOTWSmRPeWhlyacVy 2cLnGKV4xi222WfppA71idG+iDC5QbLjsk6Prso8z70T2U0R53mPX7BzWShKEFLzfk82 gpHuPKZ+bubrEkpBk+vPzUsqlDa/k4RS9hv0Enycu4vsxsucOKAMA0dpYA2YH5fRb7mJ F56Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=GfQfN8TA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=collabora.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id h16-20020a1709060f5000b00991ece4c95esi8030551ejj.487.2023.07.25.00.36.46; Tue, 25 Jul 2023 00:37:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=GfQfN8TA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232083AbjGYH13 (ORCPT + 99 others); Tue, 25 Jul 2023 03:27:29 -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 X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@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