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 B1272C3DA4A for ; Fri, 16 Aug 2024 18:10:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4ED108D00A9; Fri, 16 Aug 2024 14:10:00 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 49D4E8D00A2; Fri, 16 Aug 2024 14:10:00 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 38C218D00A9; Fri, 16 Aug 2024 14:10:00 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 1950B8D00A2 for ; Fri, 16 Aug 2024 14:10:00 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id C8CA2C0189 for ; Fri, 16 Aug 2024 18:09:59 +0000 (UTC) X-FDA: 82458897318.01.DB1D216 Received: from mail-vs1-f44.google.com (mail-vs1-f44.google.com [209.85.217.44]) by imf25.hostedemail.com (Postfix) with ESMTP id 0253DA0014 for ; Fri, 16 Aug 2024 18:09:57 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=R2xlMEbW; spf=pass (imf25.hostedemail.com: domain of pedro.falcato@gmail.com designates 209.85.217.44 as permitted sender) smtp.mailfrom=pedro.falcato@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723831761; 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=QXT+EkhrklWLGFU9rN71QI1DWSXDXH6Sll6gVrnThPY=; b=snpwf0vQVvwXU72E2gGvR00LxWVMu5HZKZFR20UZycrBMxohOHZj/VRhSSlYwVEZHUJtBS whMaqpXjVFqFdf+fjzKSTa6PNW7+B6C6veABMLs3EaM+QDkTGJf82VynWb6+ii3eEoyKfP Kggy3u5T6S2CGYExFiG/tto2+EFgpRU= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=R2xlMEbW; spf=pass (imf25.hostedemail.com: domain of pedro.falcato@gmail.com designates 209.85.217.44 as permitted sender) smtp.mailfrom=pedro.falcato@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723831761; a=rsa-sha256; cv=none; b=llA0Da+ftoIOZkiGauyN0LeJOsCLXL/ekn1g/z+C1dvlC6NJRLO/9BGwJyZp+ztu7yG8nI 54UyOhOPQXxbO3Tyw4WXLBP0anoCWdeo9p8mcU0NUXrvx3dNKoN5SpbsvVBTDOjsGZ/8hI Obzjware2B7jBWO7U9OfloA8w3A3Sh0= Received: by mail-vs1-f44.google.com with SMTP id ada2fe7eead31-495d1a6db75so775292137.1 for ; Fri, 16 Aug 2024 11:09:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723831797; x=1724436597; 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=QXT+EkhrklWLGFU9rN71QI1DWSXDXH6Sll6gVrnThPY=; b=R2xlMEbW2LUznXfOOWlEBOqkV01CNK3j9J993hUmVlhsfuMvzDiY4VVhgLnxEuM0Wy eTeXTLI+Nu/o/lxElL3QkbsCnHS+sQqR/pPkm7BhZzCwVt+oDKWEr2bJpA564w/g5NNy 4yegJGLczyJRfhua/c7D2KokbStnlB4nh0Cc1kqlA0YEhXajAchPIQLH4PZ7s7A/xKEM x9oPO5LEc3ATB7nNs73IF1uKcfS7BabP/ESDKtWVf5onzPc5HMkedSMdUWh+b8AJ6SYV b+ZKb6Ae/7gGBvrS2Fx2ZuW1zO2Z+3DiQ8P80BKQZ6tnlcL9nKQKTR2vEAI6PKOvsszr yJ6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723831797; x=1724436597; 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=QXT+EkhrklWLGFU9rN71QI1DWSXDXH6Sll6gVrnThPY=; b=f5sMROV6LAWjDjmRldogh0OAPwLg3/rKK2hABcGDnxMWuS8x8ki/Kbhlm74H/EyewA eBNIkyN3p1ClwYLpDaxxDw9M9qaSbd3QahcCDFuKCaQAm664HXDVuy5RfjP8n60n/hMu MOedHHaj3fUz3Eo6ir7VocYvnTKJw8WTEoVYJdTQpiCiInI+8YQ1pfKnuKFL+ruuP6Fj IFty/a7c6J/Xx0jYsyWQLWmMF4ZTWU3OP3BfWxhBkOfDnblsyejPZRnaDgeqlZHa9kdc eJycnDhcsOTbDXzPdEPeoQJacLMurk7r7oDcYsNs5kvBXNmRvZ9aka4JogBkh62DNDFp 9ulw== X-Forwarded-Encrypted: i=1; AJvYcCVtb6VMtEc/8pMP32Wy10G5oJ7Gn0i3nf2xNXJdErQMTu3mFUUdg2HHaWnIteh8oMbjwtfD8JoZagwMfEq9TL43CcU= X-Gm-Message-State: AOJu0YzJRaA5v0ymx+0M4SHDNmlI6AhfDFr/KrFt5mG2ubTGiP4tHOr5 iF/gUep4tM+A8RAM1xzComGZ8HUeqnRNEocvQVOL7p2DXRzgIhhhdOiNL5WDwpbEccTeI+fAYlD E1umHa3wjUCohiEB+RYEAi7RRY0Q= X-Google-Smtp-Source: AGHT+IF6bpgzYv6bEGMmO6lcZP53YsDNKH3SbarJRk7qsMyOgpwPwpioZkOEHvWDwwtIj2+y8IVgv92PvQw80CDQTRs= X-Received: by 2002:a67:f84d:0:b0:497:7b07:8d37 with SMTP id ada2fe7eead31-4977b07961dmr3360779137.29.1723831796876; Fri, 16 Aug 2024 11:09:56 -0700 (PDT) MIME-Version: 1.0 References: <20240807211309.2729719-1-pedro.falcato@gmail.com> <20240808161226.b853642c0ecf530b5cef2ecc@linux-foundation.org> In-Reply-To: From: Pedro Falcato Date: Fri, 16 Aug 2024 19:09:44 +0100 Message-ID: Subject: Re: [PATCH v2 0/6] mm: Optimize mseal checks To: Jeff Xu Cc: Jeff Xu , Andrew Morton , "Liam R. Howlett" , Vlastimil Babka , Lorenzo Stoakes , linux-mm@kvack.org, linux-kernel@vger.kernel.org, oliver.sang@intel.com, torvalds@linux-foundation.org, Michael Ellerman Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam03 X-Rspam-User: X-Rspamd-Queue-Id: 0253DA0014 X-Stat-Signature: 3nn645spyfzncn5rch5ewtxxy5d865a8 X-HE-Tag: 1723831797-859709 X-HE-Meta: U2FsdGVkX1+BLiAJac23hAcjk37FWj0cvchGEV6X3vPa1IKsqhQkpdX9CXokn4I4enPhfVPh0qiVlhrRIC/OwogcbR1SnbXQwe4p+8ij9xeFeE8N7clGmRIuwbPzVlFBqDr46XIEalqHsB73DQRXYK4IW/Y23gp64UdAJOlkFNA4ygAX8AGJ9UgMzlI7oq+L4Gxmo3+O6eg04JofITAoiOTeNyfZkOZwDQF/k/tNicvXZS6zL/OI083vl/CcJyIBSrVVHjPSmNeiUKoVU+mBp9D+O26km4tb1AqfBOISVsmRphgJuLVZC2zncB6EG1hUrSfMGxWW1UKVyDiqfMWkP2cKiW9LqPwopoKfxEp26Yku6ers/0hS3buxxQ+PdNvjdySHMgtq9J76V8XXyMoL4/VdyENq6aCyAhtPk9aFmbe2HK53t8ECI1DrMSa4nUcZYcKK8OrpEMdOnLnLwe7xYXMGt2V3wAfxb4WY6KorkEU8l9IgbT96SC7SocC9loYLLByNFE8K90uyVXSR7Cn0ex3FOOkAqoSz86iJiheC06tiwjrfBC8Kkp27wKpn3/UiTC5/5LTRc9dmMYWuC66wR9Imx314tHbIC+rPaBtnOKqfeayGI1FVxc0QIY1iUcwhbxUWZfPACN0KfG9V+kpYLk7Yz1uIDTrL46K0YMmZEAaVS37WXHObDGrL8M44cItcEtJmTvCw+HKx+dZzyogCmck/hdP77OqcQJRy8CnNAX5odXnR+HywqUi+vxmfBJGR+Pc2v+lZ2aIyCKetatnxFI7XwCQR87hpnRmqbc7U8neN+plmzX8+75Xb/PQOAGOXd8MDzCRDqLZHammtgDoJPEIMaEadUg1f8vuEFNWBm895QFS+2c1TqeCVkyB9xgaqeR8lEblkg78BiaIaUhPdJJEE/6EsdVnYKSsCNSjuR+L8XjWvknGWPDXE14rl9A7+mliJ+6Nv9ZiZpphlUvS wan+xWZM K7Kq4GD0GTczTy87mXt/usS2KGZb4zVOKQ8bKOInaqC1fMih5gSc1vI3ktMSKDCWBfWxLTosYEn3fKN4dFP2Uti/MvzUXLHt3hk9mcDej0Xk3qk7FtVij8mneLXyEYr5r5zOw5ViaI2E38qRI3oGB9AgLyS5vv91bOKIjK+TYT9jNlNGDhxhTNitTnrOE+X9hhxfTV+7rSrgIVfYHOGEKJCsUMkJu1sEDV++v38D1KC3N4mIbN2LGdU6loB9dAZNbK9m8YvogNmYTo9DS94kPmBX5GM4z4p3QoZggAXP1d1pZuPrrsUwd12PVEevBqg9gjzFViVuf7JhrLpxN6A0hFXMUKz/HfQYPv3ihyWCHkA/JGCRYuA9GeziMsNT0g1m4CvLQ 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 Fri, Aug 16, 2024 at 6:07=E2=80=AFPM Jeff Xu wrote= : > Please run this test on the latest kernel branch to verify: > > static void test_munmap_free_multiple_ranges(bool seal) > { > void *ptr; > unsigned long page_size =3D getpagesize(); > unsigned long size =3D 8 * page_size; > int ret; > int prot; > > setup_single_address(size, &ptr); > FAIL_TEST_IF_FALSE(ptr !=3D (void *)-1); > > /* unmap one page from beginning. */ > ret =3D sys_munmap(ptr, page_size); > FAIL_TEST_IF_FALSE(!ret); > > /* unmap one page from middle. */ > ret =3D sys_munmap(ptr + 4 * page_size, page_size); > FAIL_TEST_IF_FALSE(!ret); > > /* seal the last page */ > if (seal) { > ret =3D sys_mseal(ptr + 7 * page_size, page_size); > FAIL_TEST_IF_FALSE(!ret); > } > > /* munmap all 8 pages from beginning */ > ret =3D sys_munmap(ptr, 8 * page_size); > if (seal) { > FAIL_TEST_IF_FALSE(ret < 0); > > /* verify none of existing pages in the range are unmapp= ed */ > size =3D get_vma_size(ptr + page_size, &prot); > FAIL_TEST_IF_FALSE(size =3D=3D 3 * page_size); > FAIL_TEST_IF_FALSE(prot =3D=3D 4); > > size =3D get_vma_size(ptr + 5 * page_size, &prot); > FAIL_TEST_IF_FALSE(size =3D=3D 2 * page_size); > FAIL_TEST_IF_FALSE(prot =3D=3D 4); > > size =3D get_vma_size(ptr + 7 * page_size, &prot); > FAIL_TEST_IF_FALSE(size =3D=3D 1 * page_size); > FAIL_TEST_IF_FALSE(prot =3D=3D 4); > } else { > FAIL_TEST_IF_FALSE(!ret); > > /* verify all pages are unmapped */ > for (int i =3D 0; i < 8; i++) { > size =3D get_vma_size(ptr, &prot); > FAIL_TEST_IF_FALSE(size =3D=3D 0); > } > } > > REPORT_TEST_PASS(); > } > FWIW this test does not work correctly on my end due to sealed VMAs getting merged. I hacked up setup_single_address to work around that, and the test does pass on both 6.10.5 and my local mseal changes branch. --=20 Pedro