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 D654AC3DA4A for ; Fri, 16 Aug 2024 18:20:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4F5956B03A2; Fri, 16 Aug 2024 14:20:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4A4B26B03A3; Fri, 16 Aug 2024 14:20:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 393E26B03A4; Fri, 16 Aug 2024 14:20:27 -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 1981C6B03A2 for ; Fri, 16 Aug 2024 14:20:27 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 95DD6A0170 for ; Fri, 16 Aug 2024 18:20:26 +0000 (UTC) X-FDA: 82458923652.11.23D06D2 Received: from mail-oa1-f51.google.com (mail-oa1-f51.google.com [209.85.160.51]) by imf02.hostedemail.com (Postfix) with ESMTP id ABC948001B for ; Fri, 16 Aug 2024 18:20:24 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=YtuLJbGg; dmarc=pass (policy=none) header.from=chromium.org; spf=pass (imf02.hostedemail.com: domain of jeffxu@chromium.org designates 209.85.160.51 as permitted sender) smtp.mailfrom=jeffxu@chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723832341; 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=fPb+ESAaq2wrltkCUy/I577774QCbBTFaaMwP+kYFKM=; b=BJc6Iiq+QgaXP7DRLz/G/FWqaJU4cGdWwtYhDKVSWQuSWJG8sCAK+9S0OD0Z7noJ/lvc70 Vgux67hl/O1182RvBOJOOMCEHQYQszNW4Jbrl536ezED3lc3MhJdQFd1vAYrdrG/j+kE2n 8KCHmkDmrQiVvJeq49HAXcTbjtDwGuc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723832341; a=rsa-sha256; cv=none; b=R96yEDpruoQ/Ako09b618XDAzkCjIoSKzxVHKcbSj/l1qqSZKfS6QwAR+/ufXsIdJftVrt pFHvIkT/7PXyri7pkpCop+2lWouiElpqI3cpDimwrSut6psIn0VXdmGbdrSpR1+NBmNH14 OzKQ27mMiREGlr0GkrumnYtJ5ozIwdQ= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=YtuLJbGg; dmarc=pass (policy=none) header.from=chromium.org; spf=pass (imf02.hostedemail.com: domain of jeffxu@chromium.org designates 209.85.160.51 as permitted sender) smtp.mailfrom=jeffxu@chromium.org Received: by mail-oa1-f51.google.com with SMTP id 586e51a60fabf-26fde6117cfso1489796fac.1 for ; Fri, 16 Aug 2024 11:20:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1723832423; x=1724437223; 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=fPb+ESAaq2wrltkCUy/I577774QCbBTFaaMwP+kYFKM=; b=YtuLJbGgT/5Rcy7VneKCpvNyb5te3eSwHZPWHdhKwgtbiqWcosA0Si/VauaiKUUpck zT3lh2CHxaiFFhOg7d9dGkOL5WC+XyINr9W/ZcVCBiKtI6lLWHE372bWY2WAut/Xk80b zdnnk3tbhMzOR3igDC61sSVTA+5eKEgq/bp1g= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723832423; x=1724437223; 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=fPb+ESAaq2wrltkCUy/I577774QCbBTFaaMwP+kYFKM=; b=YZifspHrvs/nC9QMsqKxEQ/78RKlrH325R+T3L/4shQNGYhoZyV9kXRqCz+MGoArns CQ/mU3gF/7F2AYZyHifuJhPIGM0kAaMa6CVcwSOVOw7q9g3K9uKoYo0pA3w2Ug8xsCqy 6Cb/wTWRFHVTl8lUiOGDvGfs1iUOduz7gl5OZsyx4FO2uXn+brCtN9rVqoW/r8W6E7jR mhgwPi9+GRkLN/e356F1UDWbVd/dsKcRYqzaKdpvm7AU4vII5Feeajrt1dnl6gDkmc0b pdj4ULR2fK8JTtCJz8IBW6oC7LvZOL9FkXFZVOEyZbTEuIDek8tCzIbMEk/+l3qtT+p0 XhLg== X-Forwarded-Encrypted: i=1; AJvYcCXRu9koCeX5sqjgDdqn/gHqkFR5nzXfBrkCW2+lyoBJ/LDoSUKbWrdUAvaKDzYH/yuUWLaDUF0Oty+objejd8SyLV8= X-Gm-Message-State: AOJu0Yy2k9YZqSZqsrDOiYsDSlmEH+ay7vm2lcxk0AU1LsPibvH5y2hJ wg3QvN97Yn99uC0Q4s+CpO1SOCiNuG1xDEdHKkedAckPEgzHSl7GPUOZ5FNT3KvEe7MgKJNorz8 rVTcuPsL4utEOrYelxQ0eFNgWBfnvBt3KTSSt X-Google-Smtp-Source: AGHT+IFh6uaaGAPXUqIFgzUea3SoJXHOqApu/hbIQHCcwYCPdKTsA88ruKomvfRzGZOMDVrdfjZErMZfrsa7e4nKwfI= X-Received: by 2002:a05:6870:a117:b0:265:b32b:c45f with SMTP id 586e51a60fabf-27033c40e26mr558194fac.0.1723832423583; Fri, 16 Aug 2024 11:20:23 -0700 (PDT) MIME-Version: 1.0 References: <20240807211309.2729719-1-pedro.falcato@gmail.com> <20240808161226.b853642c0ecf530b5cef2ecc@linux-foundation.org> In-Reply-To: From: Jeff Xu Date: Fri, 16 Aug 2024 11:20:11 -0700 Message-ID: Subject: Re: [PATCH v2 0/6] mm: Optimize mseal checks To: Pedro Falcato 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: rspam07 X-Rspamd-Queue-Id: ABC948001B X-Stat-Signature: hdnyzrc41rsqbehi6js5uxapeax1k1uk X-Rspam-User: X-HE-Tag: 1723832424-72956 X-HE-Meta: U2FsdGVkX1+L4acMNSgx04HhO03PtFh6XyLZjgcHq9OevHeRV9TzDFuUdbx2c402H4YAsMTvHpUXFsNfqKFJpsDjzqrl7slmOuaLuo0X9Iou8qPFBcksgyUTqZk7f2pwnisykyha0AX5cPA3LaQNE5dJc6u10VEUu1N2k7MAMd9rGqRw0vzplL6J7Rq5C3Od8tju7qCieNwcuxXHaRGPOmUxla+/pVuWlXm/Ti3GVlpEbCyj0gP4YAioM4X/UJugPhgKJfHh4lILsyllBd7H42d7la3jTm3Pe7ZWVD7EiCmnKZgYqVZPJOAOiDA3t9RDy9dNMozL1qMxhmBtdQlyjp7TRVedxpyrTDGITGt+LBCViDle9zmx+3aSFuB9CNQahYgtVJ3q+cGHgmHAoqNpWbZ2tHXFfDRu300t9mNNX9g85+5VRywbQkhYPcO09rcod+dPG4MRxu13qp+Xya5pT66mhlTKy+p+J1VqrYTVAxjs7rb37s7cu6mThtuJ8TcuRFxen3ekfKVCgYnQGrz14tEl89PDSua+dHvH0hikqG3bdfgCQ7Clcu0KhvuGUN7o6ZcBMEQpgErlDDbtjzerIFSK5M4dbnQI7g3TwkHocOOzsdDcDg2t2fi49PNE1jzQiS3hriVwDsiLT2VjWxshA3BCONzYMGr1oBEtlTAeznfJr4ZhgGFKyV1kvsgvRJg7Unpicvaq3p92KbezM3y0N7wqD0jZt3oK0+jqsvYzvOpqrxVFPyDO7F+t+mukERA0vS7LYqM0/Rca0ZnRZ6CXNzOFy8nBbOMz3Oy/yOvMsdMWqeIlu/PY8DeRrpJ/tDlE0IUpKJ8T0M4jKT6X8L3uBEw4P/WhsaVwXN/lawuLVrSAaHZY1ruwvdQlDHZsic4+DlSsHwVzZTUeFki7UqHLZBhzycUQ5W8c061rPsw5bovq9YcPGFomregbqG5R6SKvAFHgsxIcvAUWy6+dzDB tXManE3x Ev6X7POY5fzV8zJAJ8mgZh+XZfWVW6QSm/JbIIF3hozQq/ECXB53G1AilLxzSc+Vu3CdV76OUMzpXKR2wWSOJ/h2YdEQ3RbfAXcLA3kce+Y4EJFqpJqhj4YP6ctvVZT59zXcLOTOPMcdHX0bOEWy0a58hmE3V5I3lvE+7b1kgt051fGg547LJ3dEuh04cDrhrQMm6ySPVD5cpBjFy+qQrGD7DiFgPIjtY8y//6dN63tAz/2E7cPNAF6PgI9VlBohimr+T1sKHM+QObIP07zKkSQNnHZPQwhHP6EkgVYx0iuyqAqJhI8Q/P51twHD+A5PbWtXlLjOlRmZfPQY= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000006, 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 11:09=E2=80=AFAM Pedro Falcato wrote: > > On Fri, Aug 16, 2024 at 6:07=E2=80=AFPM Jeff Xu wro= te: > > 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 unma= pped */ > > 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. Yes. you would need to comment out other tests and run this test only, it didn't consider the case that sealed vma will merge with another sealed vma (created from another test) The test didn't pass with the V2 patch (the seal =3D true) case. -Jeff > > -- > Pedro