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 9C6D6C71150 for ; Wed, 28 Aug 2024 23:38:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2AF3F6B00DA; Wed, 28 Aug 2024 19:38:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 25EA76B00DC; Wed, 28 Aug 2024 19:38:28 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0E3816B00DD; Wed, 28 Aug 2024 19:38:28 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id DF9B66B00DA for ; Wed, 28 Aug 2024 19:38:27 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 8A147C0226 for ; Wed, 28 Aug 2024 23:38:27 +0000 (UTC) X-FDA: 82503270654.01.CF97A8C Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) by imf18.hostedemail.com (Postfix) with ESMTP id A13111C0010 for ; Wed, 28 Aug 2024 23:38:24 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Djz1x0oZ; spf=pass (imf18.hostedemail.com: domain of pedro.falcato@gmail.com designates 209.85.128.53 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=1724888216; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=IB1r80w0tSniiEQsoRZPgz9PdJTE/Shx5Zcwt2Wg6DQ=; b=MRcNWoipGQ5QVWDd1z/UEXRThuau5DDira3lt8M2XnMth4tt0qt3MMnPph1FQZPuHpaM6u 141HLESaHBRYRN/ED7K8mVXBKp8+5jKB5wZodGrEJWhG3gvcf21uy68kUJ4PcwCLF3LrBJ I1aQXXlMKQJwTU/KEzMvsvPnz2RHSMw= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1724888216; a=rsa-sha256; cv=none; b=K9aJZNrOiZeqBPKLLKGIpecqJ0vsNOH5aeUbyqx3qXXhdQgbNAIocDQ22nzYaaBmQExnqr /HFFCwuiNZhseqThNs2fVmO8nULrPNsCiQQv61eGkM2dG0+CUrG4+xOL8fiofF5scJ6zRq HZ4KCZsn37H4y3199204b8xwAkUCSns= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Djz1x0oZ; spf=pass (imf18.hostedemail.com: domain of pedro.falcato@gmail.com designates 209.85.128.53 as permitted sender) smtp.mailfrom=pedro.falcato@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4280bbdad3dso439515e9.0 for ; Wed, 28 Aug 2024 16:38:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1724888303; x=1725493103; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=IB1r80w0tSniiEQsoRZPgz9PdJTE/Shx5Zcwt2Wg6DQ=; b=Djz1x0oZFXUV8jwRiF4Cmobt1k3ymxKVQadk0VIm+aEzLvhf/44eAf1NS3JsNqRjFi z8e385ldQ/a7Sm9r1C4dHuPiI09RAXvBjAjlyM/NjzMlvx9/rLQ5CB7ykJRxLUsYS/3i BEOjCOTrBjqALzTZ5PMrgOFSg9d51BMgyPLK0bIMxyu5dt8o83Dc3MdSWbVOwbZQoMRS c6lRh0+QzJnUUNvYA1lAAxLZZpgScUnZcFDR71EVizyq0r1ZciqKcAX/OyxrormWqKIL 071eLQMIYp2kSKyxga/M6FY0j3X3FakXzK2jRsl3mnqwqlNdtMCG5Rf7IfgFRv/a44kB C0+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724888303; x=1725493103; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=IB1r80w0tSniiEQsoRZPgz9PdJTE/Shx5Zcwt2Wg6DQ=; b=AiXkrXMcKII8+ai6L76zq33LaarYxMnoIsFKfoZK/NbtzF4rUj8OghgwYypSx+Xv+g BlAIXov1YMdb5bdJyyHj0v7SSa1gPinQoN+QCFH0B0PP+mxnZLrJovu0yx9lQPbQITPD sFAq5hD4FLULVxMUW9IRWWhKZ7ZsIWFuiVS1/Faj+G3iij8FXOZLIpJckd8T0MCJDl6B 4rWoJWiTBqkqbMk/fHfHbi9XOpaOKe2gDOJSwhVRxdfF8GV02OBjuugyJUFgW5MiLAl7 EWCI6LnF3LB7BVhNV1i/+9x7dSsNXBZa0zW9yXS/ytuUYVGbfpQ2OqpjbMo96hdLHoJ/ tUgA== X-Forwarded-Encrypted: i=1; AJvYcCWNzVqDrpqhU3HzYDWB5h3vBxOQ68qGSlpy1+SSeZYrRESlNIJHs2+zntXqEFrzrWZWipB6iz1P2w==@kvack.org X-Gm-Message-State: AOJu0Yzw+D0YVBQA5c7rx3lbGBU8hu7GlxPL7fKbNvI2I6DDNISZFKm/ X9XwfCyFXWzPGwDU5ohNikFhNzmHq01eH/gNJtY3pKgZ3uQQZjoE X-Google-Smtp-Source: AGHT+IGE1Tr+5K8rbiq3aX2JG+RGnBONvXmau7cJ8JCt6fwWWs0mojGwXLpROhTgTUD7IBRMv3s2Qg== X-Received: by 2002:a05:600c:1389:b0:426:6326:4cec with SMTP id 5b1f17b1804b1-42bb01e6befmr7932745e9.29.1724888302650; Wed, 28 Aug 2024 16:38:22 -0700 (PDT) Received: from PC-PEDRO-ARCH ([2001:8a0:7862:ea00:1d36:5f53:3f57:14ad]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-42ba639da86sm33548165e9.20.2024.08.28.16.38.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Aug 2024 16:38:22 -0700 (PDT) Date: Thu, 29 Aug 2024 00:38:19 +0100 From: Pedro Falcato To: jeffxu@chromium.org Cc: akpm@linux-foundation.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, linux-hardening@vger.kernel.org, rientjes@google.com, keescook@chromium.org, Liam.Howlett@oracle.com, vbabka@suse.cz, lorenzo.stoakes@oracle.com Subject: Re: [PATCH v1 1/2] mseal: fix mmap(FIXED) error code. Message-ID: References: <20240828225522.684774-1-jeffxu@chromium.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240828225522.684774-1-jeffxu@chromium.org> X-Stat-Signature: yfmktk5esh1yhffomxz4qm6re53oqwh1 X-Rspamd-Queue-Id: A13111C0010 X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1724888304-712466 X-HE-Meta: U2FsdGVkX1+mRykOReGqw9v2Y3D+9J40gUrRXD7BdgPj/pqdMRJ339nfrM5Z9Mi7wJ05mEZOkIVSFRU98GuKhbhapXxVsSws4oLyfBQHybJZQLnFTM8KGsahA7/GdHkUhH1M9ybuK8cZVGRJua24329SDaMNFQ4m34FGL6F9Xkus/EQuSNljGw6YzKgjykojKRFlmHGlQ9lUbwhVk3U5TnQbfTEIX++EDFeYApFbaAfUVx3g3VF44xZ4bcU3hq426tsEiSZxmlR5Hha/DI4T5aUiVsP1EcCXmSjIy5yodjrEdN3jHPmOx2S5nYrAODBKWOR1iL3rBSyw6b7TDOGXrK/HM6tfBtXs8V52RIeprhhrf9srRYOZgyvaYxMqcM2/5+ypuADH72zuNzLUyt1cKUAFIX6kGQcdJZJGF/lVa/h9ymSkPP65VoeJiFGrMakZ8DGsplKuNR8TDj0J8gAE1M9XzqSw/KJaFdDb0wYkf4AiGZrdYdiHRn8Gu6N3eo5xfMGkKKBOeYWc7ECXkZxf/wxXhj9tRsyL2LCFexV9lpNZbOcaGOELtMSjt0m3DK2oc8cOs+xCqHe2x3IxsoVPecwpyWhX6/ZF1dxEYuIHp4jQTk5FjmBTAOkk4jR+zHIKDJXkQqcXHN6B9M8wAoNSLnQOlVvPF6utbfpGTlZ3J1h7ckkzw0FV/TQyyYiFgv5X/jB5Kp3n7eNE+cWthNxQgpl4uub3tCy3q6+ETugEKRoGVGSK52PPBgbw//U8h28uEXMcITtk1YU3msd/QsO3927Ahdz1q3CyVUqQ/Tg/wFmnwqiWpXYsDVLGISJAF8/WIXJa+2deVudGfbB5h0q1gXWsD/HYUqo/riS+8cE5eMFIVW00hc2QmZ/03ixCF8Rz84orleWvq3VCQ/ddx6UfrXnij/eqYwMi2qrlEG20N9jCMTtRAts0HO92aVwn5o1Z7Z7efKx2Y7T01G0vZkx ydMOMh5q P0EiBERbniRaOiGaMGnu/RYiAY43KtklFNA1IWv/nu18J+M4GqPJElhOc3SZ+jgIZ5TFtK5i59mnaj3mTO6w7wYCZP4HFsXLVRKyK+k22S3iag6VFkq7QlZ2ek2Begm3C9MxH70241HdqwItcABoWIrye/L6wv+k0jR7uFEkUoSRPsnB9Agf/zgFVH3YfqP0kle/hq5EKWfKS4C8Dt0qdC5qR0JwAaPjTSKRdnXXe6h8xP0gmrBrYLdkK+EvAy8KUKKIJhkqYBjxGRVZn/vdww0h353zi3bzcflklUVkz3ZA+5Xn+fZ/13daQijnh/n90W3ADBicW0/bbKoabC4bbkyZP1nP6qRTU/0E/5XQwjv1qp9N7lb6kqwOzoip8ndR3LExCrvRzxMNDpLyygDnEAsGH6yBFsOhkGjtBLG7Oit66tgggfCHc4fPnKJDvbRPPrnN9skPqacHUmVbrBSwt1JQRixnSpjjyGtES2pbj5YLLmX9UHZSc29oIQ2nXj0l/LvVwhxqv4pJvi7w2euNiZP6StQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.023337, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: +CC vma reviewers On Wed, Aug 28, 2024 at 10:55:21PM GMT, jeffxu@chromium.org wrote: > From: Jeff Xu > > mmap(MAP_FIXED) should return EPERM when memory is sealed. > > Fixes: 4205a39e06da ("mm/munmap: replace can_modify_mm with can_modify_vma") Thank you for the patch! This Fixes: is wrong, the bug was added during Liam's rebasing of his munmap patch set on mine. > Signed-off-by: Jeff Xu > --- > mm/mmap.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/mm/mmap.c b/mm/mmap.c > index 80d70ed099cf..0cd0c0ef03c7 100644 > --- a/mm/mmap.c > +++ b/mm/mmap.c > @@ -1386,7 +1386,10 @@ unsigned long mmap_region(struct file *file, unsigned long addr, > mt_on_stack(mt_detach); > mas_init(&mas_detach, &mt_detach, /* addr = */ 0); > /* Prepare to unmap any existing mapping in the area */ > - if (vms_gather_munmap_vmas(&vms, &mas_detach)) > + error = vms_gather_munmap_vmas(&vms, &mas_detach); > + if (error == -EPERM) > + return -EPERM; Not sure if it makes sense to special case this. We should probably deal with this inside vms_gather_munmap_vmas and just pass through the error we get. Otherwise LGTM. Liam? (we should also squash this into the offending commit) -- Pedro