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 B803CC83F12 for ; Mon, 28 Aug 2023 14:46:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3E817280018; Mon, 28 Aug 2023 10:46:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3713F8E000E; Mon, 28 Aug 2023 10:46:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 212CD280018; Mon, 28 Aug 2023 10:46:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 0CC0C8E000E for ; Mon, 28 Aug 2023 10:46:32 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id D8D041A025C for ; Mon, 28 Aug 2023 14:46:31 +0000 (UTC) X-FDA: 81173789382.23.95CDE5C Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) by imf18.hostedemail.com (Postfix) with ESMTP id 5E6931C000D for ; Mon, 28 Aug 2023 14:46:29 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=KEeGZiqg; dmarc=pass (policy=none) header.from=chromium.org; spf=pass (imf18.hostedemail.com: domain of revest@chromium.org designates 209.85.216.43 as permitted sender) smtp.mailfrom=revest@chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1693233989; 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=3W8WPUKeCWcmTDKarduQ/2aLZmm8oldR8kHDCbdPKY8=; b=0v8HN5ll/qYoE5jz/xSUtUeNCSsYapUSy6B1qG4cPnxmt5h/Ugec/osZnv9ijHR42Wo+VD 8g0Lou5g+s4Zp3lKsqQLlw8m05tInHCUiBdwr1HdMC6Obyn6eZxzmWjonW7G4Wdujhvmkq D/gvTcZKNVwWcZCAFpWnASIl5sFb/kQ= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=KEeGZiqg; dmarc=pass (policy=none) header.from=chromium.org; spf=pass (imf18.hostedemail.com: domain of revest@chromium.org designates 209.85.216.43 as permitted sender) smtp.mailfrom=revest@chromium.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1693233989; a=rsa-sha256; cv=none; b=5aPjQHeEuenhWSHtts8xbTXexiYXDV+xuKFWJ+FJsZtsVlSJZRfjFUO02I9DKjvmxjHl22 59/Y6eB5+YyCnHbjMv3lZpTIFQPjcxeKnvwsoxwHVBZNyIWCnUyPGCseQN3wnOvrhPlIlh msnM8RT6GDkncQgPgBFIZYYcABvDdHY= Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-26d63b608d4so1680560a91.2 for ; Mon, 28 Aug 2023 07:46:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1693233988; x=1693838788; 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=3W8WPUKeCWcmTDKarduQ/2aLZmm8oldR8kHDCbdPKY8=; b=KEeGZiqgbuuApzkXzkp2+QqoLcf3pKMI0JHyN8rbRBspGLttAE4LXMsw+L8mq9rAf3 nZyoJz7Sz2I1Cbp7oVxJOmIwxjY9IM5uBW1jqW5ILSx1w0KclmXizFsNXN7BToWHqwGg 9TQpgHDLSW70Ur84j4O8Kle7cTnwgfdPJ1xBo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693233988; x=1693838788; 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=3W8WPUKeCWcmTDKarduQ/2aLZmm8oldR8kHDCbdPKY8=; b=eEmpDoZoOFLz4WpmLcCNKPTUU5Dflbd4M0mLERXSewVX0JX8vpOG1a0VRhVct5wNr7 JVjvy62N+0yTUk5+JZW051vNhhhzGd5bRFKYwc6sriZyivt2Qoo/FUP/3h+RUvCsMDFP kXPIZGOaVCeUYgcIwT049AXM5PCQVysGkm18vtGu45xoaNV/sOcfNwZ+SSP1zRCh+WNk Td9ZTrxbX4Sr01Hc4tlNqgkqG7v0Kr3YiNRhm1extuTX40n96QAWd9HbYNeSJd6TwBIb uDvbHLpI5oUIotn6DWCpC97HzQdTMC3buMhEvFqFEmgNXlmsLWBtKhum7HlsOJJbZBh/ SIaw== X-Gm-Message-State: AOJu0YwIccp9RtFMcLxK+muNZcLhq2gTYwQvTMSPxEMCsosz7Ndmz7zO halMg8JgiiFX62cdYO0UOABSc6f2VTsol3ScLbzLBw== X-Google-Smtp-Source: AGHT+IHSsuoA6r7noAsoTIFSQ0k+xX+8toZpL/0fxKRqr994kNitNc18FpuEhPUbOb3w78hu1POFQ5NuJV7ut5D+m3o= X-Received: by 2002:a17:90a:9f88:b0:268:b66b:d9f6 with SMTP id o8-20020a17090a9f8800b00268b66bd9f6mr18698842pjp.18.1693233988257; Mon, 28 Aug 2023 07:46:28 -0700 (PDT) MIME-Version: 1.0 References: <20230704153630.1591122-1-revest@chromium.org> <20230704153630.1591122-3-revest@chromium.org> <202308251526.E350861ED@keescook> In-Reply-To: <202308251526.E350861ED@keescook> From: Florent Revest Date: Mon, 28 Aug 2023 16:46:16 +0200 Message-ID: Subject: Re: [PATCH v3 2/5] kselftest: vm: Fix mdwe's mmap_FIXED test case To: Kees Cook Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, catalin.marinas@arm.com, anshuman.khandual@arm.com, joey.gouly@arm.com, mhocko@suse.com, david@redhat.com, peterx@redhat.com, izbyshev@ispras.ru, broonie@kernel.org, szabolcs.nagy@arm.com, kpsingh@kernel.org, gthelen@google.com, toiwoton@gmail.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 5E6931C000D X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: 5xtefpbjzrb1p4dg9pmitmsju1mgo44r X-HE-Tag: 1693233989-478710 X-HE-Meta: U2FsdGVkX18tPW8NW7CY2q3Ebj/FZPC88PpB2ea+LfQs5YWI8yW6MlebsPkj6P2YPtVB8iPhMt6EtWyB4bbxGAcuFr8W7tlM5ijS2fwlZrHtUbJeRmsaXnOKH5E+AUJyHq5FuqHAvOoVgPHC6aEt8s3xdqJhKhHBuwe7mK53jeq0dbblBRzoosZRHezan/h7SwIzPparccr49sSspAzQWLargIXZkCowUkm9LZP+8LyFY3OsZt9UPBXWCw6bZiBtzSW6/o3v5SzNJ6xDgPRwwSLRo7L1iUWDca8WwXMyLSZnqEl4AqoVwm5IaDl2ucWgTVkk9zDCIwYGkVsg2pYQq9Pr5QyJWN6znPqZaijhpQNQ2GwKAauAQW1JXG426dJTxtzyCo4fhULBF9Wn55siLCid+dxmmgtFX2nn6lEzheRyNy1PdamYuCj+gjHgwj2+oC7hkw/u04rxsMfrFf9RWn+E/QQeYc0hAjrjmn/8FHLOIEdElSBbhqO+XpsWJNf0v6iLC8CmEBF5XyY88p0DpARXcKeR5Q/2Qu2Bazl3wjQBr7QNYKXd4lqp5f2lrEaXyHx1YKAGCH0bj/Jv4cDA6jNNoWx0/A+G30ou66DUr+yNz6DGxfhKi5Qp9lsjnnLZkou8sPB0JWIh3DiebMwOEMwP1NkFgdI2Kg2RwFGNAC1EHf8Jh2DXkqbmr+0SwrZCPeFJaELDx5vuvek5qdTyGZmYAUKZIq8p8UYoQ4IvkQz4EUsZpdzmitwN2pLgxQh7TLIyW++sk+roMfEHKv/fAQEXvYXLk2Iug+cP5eCKNJeyzEHSzoi0iOCikFstr0YMkDpdlyHOR41vMNQKMqKWE7/Z04HZ9l40jtsBY2vi8jItSVD5iaU/9pUwSLXAT6hT6rEAVVSUGonjy7n4R8OGDnAE/jHb/nffXBkNKcy5XmZHjiAYyXHi3WY+IqtSvnWW6vWULDexrSrkOEPfkCl qWlMKp4J iO36abdMndLfXHD5aMmq+fc3RBDSz4AjaJe3AUc0efDIM6dkqY5hyDF9YfiGb4JtJ0kxWMUMzICg+9ukdWiCUZKAqf4neULeTAPPfqh/1DkqjM/Bh0UK9GYLeJVYFPq+L7xxCu6tQgoW3Xihwy1DwxHaz+yl8ce0AypOzC2uHd90nSITAR5ldmBKH+48OxJWO2YHtYRkrSDQ/qwpU3lci40woLKXlUPs3Oe1LuRG1BPmp9O3+6d8+XjKxPxsZJUcH3mXw8RMuWAsBJRGn49SM7ggVSFQ9KyentLk2uyrOCys1bZf6urzt9u/WaGIdcxOUSzeVJJxDUtoKySoIbsgWS/BG0FraKXMhbzPltfDRNZHYh4U= 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: On Sat, Aug 26, 2023 at 12:28=E2=80=AFAM Kees Cook = wrote: > > On Tue, Jul 04, 2023 at 05:36:26PM +0200, Florent Revest wrote: > > I checked with the original author, the mmap_FIXED test case wasn't > > properly tested and fails. Currently, it maps two consecutive (non > > overlapping) pages and expects the second mapping to be denied by MDWE > > but these two pages have nothing to do with each other so MDWE is > > actually out of the picture here. > > > > What the test actually intended to do was to remap a virtual address > > using MAP_FIXED. However, this operation unmaps the existing mapping an= d > > creates a new one so the va is backed by a new page and MDWE is again > > out of the picture, all remappings should succeed. > > > > This patch keeps the test case to make it clear that this situation is > > expected to work. > > > > Signed-off-by: Florent Revest > > Reviewed-by: David Hildenbrand > > Fixes: 4cf1fe34fd18 ("kselftest: vm: add tests for memory-deny-write-ex= ecute") > > --- > > tools/testing/selftests/mm/mdwe_test.c | 9 +++------ > > 1 file changed, 3 insertions(+), 6 deletions(-) > > > > diff --git a/tools/testing/selftests/mm/mdwe_test.c b/tools/testing/sel= ftests/mm/mdwe_test.c > > index d0954c657feb..91aa9c3099e7 100644 > > --- a/tools/testing/selftests/mm/mdwe_test.c > > +++ b/tools/testing/selftests/mm/mdwe_test.c > > @@ -168,13 +168,10 @@ TEST_F(mdwe, mmap_FIXED) > > self->p =3D mmap(NULL, self->size, PROT_READ, self->flags, 0, 0); > > ASSERT_NE(self->p, MAP_FAILED); > > > > - p =3D mmap(self->p + self->size, self->size, PROT_READ | PROT_EXE= C, > > + /* MAP_FIXED unmaps the existing page before mapping which is all= owed */ > > + p =3D mmap(self->p, self->size, PROT_READ | PROT_EXEC, > > self->flags | MAP_FIXED, 0, 0); > > - if (variant->enabled) { > > - EXPECT_EQ(p, MAP_FAILED); > > - } else { > > - EXPECT_EQ(p, self->p); > > - } > > + EXPECT_EQ(p, self->p); > > } > > This is just validating the MDWE doesn't block a MAP_FIXED replacement? Yes! :) In v4 I modified the description just a little bit to state that out clearl= y.