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 4B930C83F1A for ; Mon, 14 Jul 2025 14:46:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9CFB56B0096; Mon, 14 Jul 2025 10:46:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 958986B00AB; Mon, 14 Jul 2025 10:46:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7ABED6B00B5; Mon, 14 Jul 2025 10:46:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 657336B0096 for ; Mon, 14 Jul 2025 10:46:07 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 247AFC01D7 for ; Mon, 14 Jul 2025 14:46:07 +0000 (UTC) X-FDA: 83663145174.29.78CC722 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf12.hostedemail.com (Postfix) with ESMTP id B8FB240005 for ; Mon, 14 Jul 2025 14:46:04 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Z8ClgxkL; spf=pass (imf12.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752504364; a=rsa-sha256; cv=none; b=C8WcbjvmSgSPRH4G7t0GMEbd/QimJFm2VfE8vz/1VMSgCn18/8OpRvPrmC0u8+oojIlsRw S1CWuzbtZJY4mc1hbQu9lMfuVFHQCBg/V3OqgSC3d1mfQHSueC93cKbZeVMrIPquQmMFXE uH2VUU1WQU1PEUDYcfPf71QDl9qcXwA= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Z8ClgxkL; spf=pass (imf12.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752504364; 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=FFvWUbvYOMPAFeZVSRMsNONk4G4QFR5pZQmr1EAVpzU=; b=qV4s6DvtNI5j985OTS0DNqUk18JgPV/FE8qrG8wZDvk+VMUpAHkWgzfSwOeVhxD+h0napg 4RpTfxt+Hr6cfxXzpUVDFctyB/5Fcp4cws5vSUtNPGZ9QT9hZuUD6JDgwQXw+LMQXPRZl2 ACPIEJPhuP4sFZkEDrcRWAqm78eKSFg= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1752504364; h=from:from: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; bh=FFvWUbvYOMPAFeZVSRMsNONk4G4QFR5pZQmr1EAVpzU=; b=Z8ClgxkL5GYGP4KQW6+Jt/XocVopcuCkR/7vCv5xz2pShwWJYTsf/gaE3+mMwJ+l4/xz8T oCYnvap+FVukszeY8M9Cl7mslgfG696vx5KqbYvgDYzKmSEirQk7lGyAom0s1DA21cZeYs i6OOrThe6AdGE2waa3K0f2lB4uG1e20= Received: from mail-wm1-f71.google.com (mail-wm1-f71.google.com [209.85.128.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-453-eRHkx3NIMs6IpZd34BgtFw-1; Mon, 14 Jul 2025 10:46:02 -0400 X-MC-Unique: eRHkx3NIMs6IpZd34BgtFw-1 X-Mimecast-MFC-AGG-ID: eRHkx3NIMs6IpZd34BgtFw_1752504361 Received: by mail-wm1-f71.google.com with SMTP id 5b1f17b1804b1-451d30992bcso34156205e9.2 for ; Mon, 14 Jul 2025 07:46:02 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752504361; x=1753109161; h=content-transfer-encoding:in-reply-to:organization:content-language :from:references:cc:to:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=FFvWUbvYOMPAFeZVSRMsNONk4G4QFR5pZQmr1EAVpzU=; b=tuMdaCBYD9TIJPUW/HWN1bayqzHB6ZOBZtbcbC9Rtfx5y0aGiDwb5R8RcCe53AOkwV OyOWiNhi4Ro6G8Ef3vat8rRbzx90gX/AMuFmKvwdT9RjlGz0RNmmblk2AswM3bwIJd0B snNotL3EDcIWdXE3dO2Rd0ruPqY7KiiVsa7zUP1ACfAf5hNFj856UAqx/CcGmTpb3G1g 6CP/5q2t5bKP4IJVNhtOM4B7RI2SmYyQ4NmqEGxsTbdXe8wwtIKMR1zESzRP1j65LvhK tbiidHgk1Tji0rgeZkl13DzPjvnCi2XB39HGfGLEQIMwEOoT4qlyvjW0UrLPsSgmV81o Xlrg== X-Forwarded-Encrypted: i=1; AJvYcCUiKrKgJsqAPaHvQdgB9GZ/NVv6t3wpreclQZGI43DDN5t/7r73m6t74YeEndB5Bbo5YZ5O0/rl1A==@kvack.org X-Gm-Message-State: AOJu0Yx98WXgA+SrqNzazFJGuaGKV4C/aDQbmmlAiwcVIwKGomQ5BHT3 J6JXANZdZahDGFWQANCqEc9uSnsPOJH40HErQF6duaDHpuQrC5E0b+5l3jQow1I4sA6rarvVZ1p fB7QbZcOx9a65Q01yoIhzi2MMTuTFHTF0ICu2oafjSkToD6HaowIV X-Gm-Gg: ASbGncury38PnOU2tpy8BEV0YIgc/nUDTPCDOzyY1cUprizqZ9HBA3BNTKYrI+AAPWE fbnHF3JmLsFNd3sWBmE41yXJUurC8uffsjc8yEpXHMhbxxniO6eYfz+BZsZF43F9XxbrwlQ7I19 4xhG2b1qAB5s9ivySbEn6ltRuijeAPhjqebmPBOIfMNu8hDSX6zKyef6LUq2UyehkCYpAw8SNz0 8zX1gNT1ihkGoB/uQ3bPUHgaGvta6EUwJrBi7puRh+asTP8Y3eotL3zFt5hz5864Z2LXRcl6EVn SAjQWZH18Qxl3WWm+FQ+CaINeD2dhMwjRSo14/7XDnjpKXbOvvmV318g8URHuMtJUmnMbjKhReC Bjkt2VtAcdRhumLmrFm1vHcVtSSZXdzSCnhRyew3DXnjLacA6QcNXIYLe4D4LVKxf X-Received: by 2002:a05:6000:2088:b0:3b3:a6e1:135c with SMTP id ffacd0b85a97d-3b5f2e32f4fmr9267472f8f.42.1752504361431; Mon, 14 Jul 2025 07:46:01 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGenZg7oquFIg2YohZBIDiWhyyzgKEdWWdgmEJ/zEzda7h5UoZedqpmDLCPCuVQ4P+Ykj5sWw== X-Received: by 2002:a05:6000:2088:b0:3b3:a6e1:135c with SMTP id ffacd0b85a97d-3b5f2e32f4fmr9267458f8f.42.1752504361042; Mon, 14 Jul 2025 07:46:01 -0700 (PDT) Received: from ?IPV6:2003:d8:2f38:ca00:ca3a:83da:653e:234? (p200300d82f38ca00ca3a83da653e0234.dip0.t-ipconnect.de. [2003:d8:2f38:ca00:ca3a:83da:653e:234]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b5e8dc3a54sm12812499f8f.39.2025.07.14.07.45.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 14 Jul 2025 07:46:00 -0700 (PDT) Message-ID: Date: Mon, 14 Jul 2025 16:45:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC Patch 2/2] selftests/mm: assert rmap behave as expected To: Wei Yang Cc: akpm@linux-foundation.org, lorenzo.stoakes@oracle.com, riel@surriel.com, Liam.Howlett@oracle.com, vbabka@suse.cz, harry.yoo@oracle.com, linux-mm@kvack.org, linux-kselftest@vger.kernel.org References: <20250604082145.13800-1-richard.weiyang@gmail.com> <20250604082145.13800-3-richard.weiyang@gmail.com> <20250604083441.hilkdzlxmxygivvt@master> <2ee1d2ca-94c5-4c27-b2dc-bcea2b710dcf@redhat.com> <20250714144248.54d4rhboeq2wn6x4@master> From: David Hildenbrand Organization: Red Hat In-Reply-To: <20250714144248.54d4rhboeq2wn6x4@master> X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: KgufWVsw9q7HY-BiGgT-I_5EgOxD1Hn17W6GFPljieo_1752504361 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: B8FB240005 X-Stat-Signature: ocxsepbz84becg9xbxwajetri1pt7wt8 X-HE-Tag: 1752504364-812020 X-HE-Meta: U2FsdGVkX1+42IIFKfG4X4ft3DUw2C2Yv0kdUX2gQ4rrGZq4PgMVniAumP++DXXb/XiAdl+f9KRm1rCCTzBhmgWsrwdtLuN8/wUellIWFoWx7puuUPjl3qSxuqP9ZjvKqfUl9tPDrDHUOqZ/euZUaiN69bS/okUEdn1/7DX7mVMhJG3mN6OZ6qQfd5TMAw9eqTP5uMn3T6ry3Kw5+ajK862Hu4F1VtHqKwM8G3UPU7xp/V+QzlA0DX+ow716pQyCfqxkO7/RwCzd9RutniCzntpLseR7jVqOl5ppSq1FYS5FYhQ/HeLPp5rUXbZcPRhQMgDwls6eYLUNa8WsgdzOK0HkvWVhFTSclfLzfRKy2I3R2kN6oigvZNXYS8rRYRL7kMOl+NlltXfa7soskN5H07EPHVp/j1OoBvI/ue0CRCkJI13E/2m6iVL+HDeoEJDPRQ/z49rGrzV4XrPYmPVPE9uxDZ427Ym387BY3/aPKquzs7ynA8CFhA5yx0rccnnppgb7noWR3E5qGCpaWGP6wqSrzqoNuFx12s9HU73vLNt/iuksz1bN0Fs9ERdIBytU634iouFZx207RvYX+Rlati6UKv+2WAASoIDLPdJtfHtgEyT+AujEilbklCTQBUqAgg5eMaJrjuf5+jw9/Qxh/CclEmBeWRKrts0840xd2gUnZSo94hAuWenpI6FWEBbcK3VatSTtfprQYCD2rzTd+L1oRauKELDjjNSDLWmHUmrSS3YDyAWxq6erD5t6kCJ+5UG3kwtSJJiNhvH95FIAV302CBcThvjJRWn87C+XRbxYMju8mSBRHauzAoh1NolkRDBvJb4TkFhHXfyB1TJZ9CznYC37Z/UlW7lvvJtazRt9eMZJoG758O7VKMi6b8zBXX0m+kaRMHke2UUhrU1MTntSXOZSd64wxzg8L8ZQexq/mXaGLE3X8EYaoxFMBSwcmXV5w6gY9utkgBI3auJ xfFG4ug3 z0hLiYtvNsh0uUZVcpREBCuzuexcbIODTYIqHH6omMUWstqBgorvFAth/SCTw+z/o4OVtRVvxdtLJjM31qpzA0S/eIW8L1W7ULJAPAR2Sg0990rVUgvy4qCQDhKjktj6IqrNC4fbduZyPm7USwVBrt2pMWO7dxXA4Lff77UQm+9QZpzDWGAjCW0eZV1nLu4kt2NZVvyax5PYvq31giOjpWTUoxg2iLZ3CQf6966SjZ6aaEM3GfrbmMi/hg53WAS+men9fQ+yobaMV+79O/cbPIcn7wrJpENWMIL73HfM4z5VXaFKSJuniAg7vnW8h0DzWzIuOa2XrZycwDivd4DBwSq8n0Z0qTEXRk/6xMrjvdtTIUkS1Mo9O78mQuArWNHUABfWGqnHfR44HCwyBCNp2YG66OrbnuZucc5M/9baixHSIsIaoeYms6scDrrEhwQySKscrVxhvwkH2HyUIbWtpo87UU7QoYqJ+0+sOqz6g5pkxjYqdyBCMm2l3x3AFjssPZmtq9tNxm21x39sH04dFGfD61VQCE4iz6cmc 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 14.07.25 16:42, Wei Yang wrote: > On Fri, Jul 11, 2025 at 05:39:39PM +0200, David Hildenbrand wrote: >> On 04.06.25 10:34, Wei Yang wrote: >>> On Wed, Jun 04, 2025 at 08:21:45AM +0000, Wei Yang wrote: >>> [...] >>>> +int try_to_move_page(char *region) >>>> +{ >>>> + int ret; >>>> + int node; >>>> + int status = 0; >>>> + >>>> + ksft_print_msg("worker %d move_pages of content: %.15s\n", getpid(), region); >>> >>> One thing confused me here. >>> >>> If I don't access region here, the following move_pages() would report >>> -ENOENT occationally. The reason is do_pages_stat_array() -> >>> folio_walk_start() returns NULL. >> >> Right, the pages were not faulted in. The man page mentions that as >> >> "-ENOENT: The page is not present." >> > > Thanks I see the man page, but from the code point of view, I don't follow it. > > The move_pages() return -ENOENT in a child process, and the child duplicate it > memory space during fork(). > > dup_mmap() > for_each_vma() > copy_page_range() > ... > copy_pte_range() -> copy_present_ptes() > __copy_present_ptes() > set_ptes() > > Even we map the range by MAP_SHARED, we don't need to wrprotect it. > But we still set_ptes() in the child process page table. > > > So it looks the child has prepared the page table and not need to fault in to > setup it. > > Do I miss something? See copy_page_range() -> vma_needs_copy(), where we essentially optimize-out copying of page tables for most MAP_SHARED mappings (or MAP_PRIVATE mappings when we never placed private pages). -- Cheers, David / dhildenb