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 D57F7C02194 for ; Thu, 6 Feb 2025 18:54:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 65C946B0095; Thu, 6 Feb 2025 13:54:52 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 60BDD6B0096; Thu, 6 Feb 2025 13:54:52 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4ABDE6B0098; Thu, 6 Feb 2025 13:54:52 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 2AC596B0095 for ; Thu, 6 Feb 2025 13:54:52 -0500 (EST) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id E077DA129C for ; Thu, 6 Feb 2025 18:54:51 +0000 (UTC) X-FDA: 83090421582.12.69FD32E Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by imf23.hostedemail.com (Postfix) with ESMTP id 92DD0140009 for ; Thu, 6 Feb 2025 18:54:49 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=GY2K8VoF; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=kUpsnu4R; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=eXFEEWGh; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=dOmGRfMf; spf=pass (imf23.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.131 as permitted sender) smtp.mailfrom=osalvador@suse.de; dmarc=pass (policy=none) header.from=suse.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738868089; a=rsa-sha256; cv=none; b=iUOjmr3GYA+RTx3n3wCFT5COVlL0WSriZssnknvJ1zpgPJ95F1/R0ZcIcbynYUoPD0oyEe 974XFKusuUcK7tKQ1uN3xEhGS/d/85wYNVb16HnTIUzsu+gv7CSGDQc9xuDDcJB95xTYcp d6mBZYpp/pJpaYpuirFrjn2X0P26K4w= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=GY2K8VoF; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=kUpsnu4R; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=eXFEEWGh; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=dOmGRfMf; spf=pass (imf23.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.131 as permitted sender) smtp.mailfrom=osalvador@suse.de; dmarc=pass (policy=none) header.from=suse.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738868089; 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=rC4XlVJqC5o+whpXl4uGWCGfUwN8J2wiUfsqfmGCS7o=; b=BY1Pm9e3nLBaROZk6ZqvZ+i86tWrsdcnDZGU6RpBt2voTnYJ0bcby4g+Ft1LX87D/Qxr1G FFX7FasZUWtH0ZexYfhOJ9dp33+PsDfLFmbHQaJDNOXogMFTKzdKv/TJhjYIg2KCcRwk8t NpWTeSgiAanDj8Vz/V0EBADUeJA0hTw= Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id E25281F38D; Thu, 6 Feb 2025 18:54:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1738868087; h=from:from:reply-to: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=rC4XlVJqC5o+whpXl4uGWCGfUwN8J2wiUfsqfmGCS7o=; b=GY2K8VoFkE3joUfjALJD8RtoOh/LWgn4WjhhLtiB6xpKci/siuCU7FhP3wVrqBb7Uu2cYR 4TJNMcueJTopusY2GEdTXkD9l0dBChiHHMWPIIw+mPxR8P2MfcurA9SSrri+A3klrOQhCg 3dyVzOEVTaxor8kx/TBUowF31yc3wtY= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1738868087; h=from:from:reply-to: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=rC4XlVJqC5o+whpXl4uGWCGfUwN8J2wiUfsqfmGCS7o=; b=kUpsnu4RgfPjW1ixU74ByO7kZnYh73VkaNzbmrKNyljYS9OJfCoywlNiJXdz8nvoD/k12D mFqTOuAae3RiunAg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1738868086; h=from:from:reply-to: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=rC4XlVJqC5o+whpXl4uGWCGfUwN8J2wiUfsqfmGCS7o=; b=eXFEEWGhDmGsLohHrnVJHvBR9I2dr2RR9KRNsQ5jJPw1kdI3If+hybSInRFALHkRPe/rOd e4OyHCLAQKww7citnUHh7QdOJ/JQeoVtam/qTO63DSCWhEGSOa2EiXUIPOuttLWGYP4FlD 2TD6nuYXKcXkWGRZ50gN6GxEhe6Z/aE= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1738868086; h=from:from:reply-to: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=rC4XlVJqC5o+whpXl4uGWCGfUwN8J2wiUfsqfmGCS7o=; b=dOmGRfMfHd0mOz7MCOqgKNXofR62JJrd1BPvCbsbhN/BEX1nM/zq8YiihI9gaAB1nINZkG egHY+GPOKDzXZiAA== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 78EB513694; Thu, 6 Feb 2025 18:54:46 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id 8Z2NGnYFpWfldgAAD6G6ig (envelope-from ); Thu, 06 Feb 2025 18:54:46 +0000 Date: Thu, 6 Feb 2025 19:54:29 +0100 From: Oscar Salvador To: =?iso-8859-1?Q?J=F6rn?= Engel Cc: Uday Shankar , Muchun Song , Andrew Morton , linux-mm@kvack.org, lorenzo.stoakes@oracle.com Subject: Re: [bug report?] unintuitive behavior when mapping over hugepage-backed PROT_NONE regions Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspamd-Action: no action X-Stat-Signature: 9hh8mbfw3qbdbybkyjeg4m4drrym474g X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 92DD0140009 X-Rspam-User: X-HE-Tag: 1738868089-274683 X-HE-Meta: U2FsdGVkX1+G+oYRCrL7LipT0y798PCqSlXvQebbA90pZrRbYLZLW1szNjbcybMOO30N2rgIzkpVIOTpIoJ/+oM9mH3E1iMg8s05ecYx3yTLn/iyJRNQWZLbb1mLcMid3G/IlzEfbJR52jhTE9g/i3f0kqkBTpxsd75AY8ZeSkkPErqIOSvCh+zitKpeCWjP1Xa9v62O4/AlFbEcGOiGU1N6t0P4tZJ9NaLfbqKgUOPkukv9PQNcJb5E0999gt4J7bEzBw8TGKKQW1jdu/AwewGQjR1RhHf4bGMAv3EFqR7SfFM6mKZbcmrnY/GqLiEG8Qa3BP2SmNbko1jJuRCtsaqCvuYifj7xM8zY8+A8C88a4HF7xg5Pd36bsVWPtI3YyzBehE5d1qPZCj8naaFM08VcHtmA6ALFadHEBLbf3mLROnKohL8tgJdY5RygDqe918kRHFC85Zaj0W9aafV2ivKZLG/0C4P1saRBq0U5ktIYLQiFwwFthsejLx/y4m9p0zKzJBXtX1So3pJP/yP4vKP94oUEpQivXF+8C1lDiKHWibnpGURNwdL0cpgCXQYDyGAmWuQwWkCQyNJ1+9Q+2yQ9lrSABbZNJNw0vXDDXMBppTM7D7Ikl8gb+fOAtDsHjijsCqgMA62Umi1JiQA1KpQKqBVw+pG++caOPdGMlGlnsju9WYQeTcqJBixhXmhZK4DnBMMWi+cL7PC6dYdubEWZ/9AQ7vL9boYM4ZTWF7Ax42AJnytAxVRaix0ukxW/DMvebW+Qnxg/ZzQy3jdZ+M5K8Ykuklz5xAze0DWvtGUHuGijH9OllGQk0kgJt5m9T0sIcjuTHfjfXv52UilBJK8eIY0DKebuRZ0e9fs+iBxetMHbmTtc2dmAvMZQPS+i4UqTDC8RkoR1vIlCsU27OBzqeS0XJIyfkDcPB59r0MuYaklXAUKRqZhDSDKxLOwQjKHVTWIhqwTEmlJ367x WBCVWat2 7nqtVWCy2cAEENuFzV2v7t3Ju3jt5Vp8Ka9RPXfMy4ddZRlEeNFP0hzUT341AExT35fv1tzGPJzl+4lJFAm8eQ8UeUZkM78+04mcANldJ8IQ/9NmfG+jTHlIpZxYktYxckH8kksZyjezhKUV6ehFzRjJZVX7l17nqH1RF2N7OqdcDTlf1Ece3TcWEa6INRQDpAK394tQB4NSOSSAxYuyKTnq2LSJJp/pS+39lA4mQKcP7mGp9JAk84ag3xyZbw2eNU+r41v3So4Zj6AAiQE+f0d0ZGEiEJc086Fkq8iCxFKNFy2O3aPMQra8K2137G7tODCWOywQixSflxtRInPIK95E4dF/tHicjN0DyJM+TQpQzdE5meZaUrZTPxg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000417, 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 Thu, Feb 06, 2025 at 10:11:30AM -0800, Jörn Engel wrote: > On Thu, Feb 06, 2025 at 10:01:05AM +0100, Oscar Salvador wrote: > > > > That is because the above happens after __mmap_prepare(), which is > > responsible of unmapping any overlapping areas, is executed. > > I guess this is done this way because rolling back at this point would be > > quite tricky. Let me add Lorenzo > The big question (to me at least) is whether the current behavior is > correct or not. I cannot find any documentation to that end, so maybe > this is a new question we have to answer for the first time. So: > > In case of failure, should munmap() change the process address space? > > As a user I would like the answer to be "no". Partially because I was > personally surprised to see a change and surprises often result in bugs. > Partially because the specific change isn't even well-defined. The size > of the unmapped region depends on the kernel configuration, you might > unmap a 2M-aligned chunk or a 1G-aligned chunk. > > Are there contrary opinions out there? Would it ever be useful to have > a failed mmap or munmap make changes to the process address space? AFAIK we try to rollback as much as possible (vms_abort_munmap_vmas()), but sometimes it is not possible. For the problem here at hand, we could poke hugetlb to check whether it has enough hugetlb pages, but that would be 1) racy and 2) we do not want to special case hugetlb even more. Hopefully Lorenzo can shed some light here. -- Oscar Salvador SUSE Labs