From nobody Tue Feb 10 08:31:20 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org ARC-Seal: i=1; a=rsa-sha256; t=1615628978; cv=none; d=zohomail.com; s=zohoarc; b=WbL1yL7HkrCF8NRmEVYgijF5eHes49n0vmLaVL3+XBu1Kq4u8UyZD1J+BGKAsOCRSfwfyLxWlDCgHQotKOJkaWJOOlvA7Li8mnMZxpco4qTKwlEo0pCtcmzQHMI4HP3u+rtOwjSDE83FN7qNIxI0FMhGd1+IJAonBshby3t9itM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1615628978; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ulnooFUzFQuWWLyrV6rSf9sag52RwuBXICrkKFSmzB0=; b=QXGBkRsX3apO6dLdgBxlxSFSo8t8DqUliaSzMDJDrFGsHY5VeUsJR1kY316qVBisEoVIP0tlV4HaRyMbqCzpyYnS0oc8hyf5YpofetQ5YQ99MBqUM7glivqdqynDMl10OpbA4yuDgqz1y6FQYe+YHM+VQsLhW4pIIwFdfEQYrGo= ARC-Authentication-Results: i=1; mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1615628978529554.8012627970736; Sat, 13 Mar 2021 01:49:38 -0800 (PST) Received: from localhost ([::1]:44418 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lL0ts-0000iU-Vl for importer@patchew.org; Sat, 13 Mar 2021 04:49:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34010) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lL0sM-00079T-6d for qemu-devel@nongnu.org; Sat, 13 Mar 2021 04:48:03 -0500 Received: from mout.kundenserver.de ([217.72.192.74]:58989) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lL0sG-00075u-86 for qemu-devel@nongnu.org; Sat, 13 Mar 2021 04:48:01 -0500 Received: from localhost.localdomain ([82.142.6.26]) by mrelayeu.kundenserver.de (mreue106 [212.227.15.183]) with ESMTPSA (Nemesis) id 1MrPVJ-1m73Lr3H6N-00oWK9; Sat, 13 Mar 2021 10:47:52 +0100 From: Laurent Vivier To: qemu-devel@nongnu.org Subject: [PULL 4/5] linux-user/elfload: do not assume MAP_FIXED_NOREPLACE kernel support Date: Sat, 13 Mar 2021 10:47:46 +0100 Message-Id: <20210313094747.2966948-5-laurent@vivier.eu> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210313094747.2966948-1-laurent@vivier.eu> References: <20210313094747.2966948-1-laurent@vivier.eu> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:2/s7H0X2AzTU8XmqUkzKe38GLMhxVTEhegdlewSVChNIqK0fkTI otm+wHxNEpLJ/G+h5ROsRZdRlhzCofX5Fz9NdQoQtZcGFtwgMMyZ5c+ENsxnjEUbMGKkSon WNf3T8e3DzaB65/sIZA95cHXb1Q9bwMA25i9T4hkNb5UtibT9zplVAUEv2iNE5uqj7gd6Y0 urYM6gfCRxpHdsFVtNLvw== X-UI-Out-Filterresults: notjunk:1;V03:K0:Z8/tCqKbGTQ=:gP2Zcj1g0opYWib7o01ZFz wzvn8aakwBQbVXXUy5c9bFWb2k+wLbZ7LG6oBKZ4gZGJH+omOjqeH9Aik6Zd+jx/GEYyZG7ET h4TuedRMpkIj7XqbKvSo3EiIAl+2mCnHSawGkk7uKHwqPSE50vTjYsjB6A8eHZRc2QUfBWxSL BfaXcnmPGxT2pNe5UXy41iblokjdsIGKwLUHATft2dE8HNmJRqA56cQUr63ssQC4ptNlj0vJL Fk1QRcyVs/luzkmZngLCD0sQUhIJlGNPaQhiOuAOq+y8koOECMznJKJ7wcmTYy50VaPzfKToA Gjo6VBlrqh2S4N7Om5VnfcS9XvSmDRM7ok0YrKnxPJtI0KZFQ9D5LToXiQcPoQp0SYjuaVgwu lPjQkeymUaMmTh6LrrJWhRSCXTR8m3NuSESebc6ZoZs5pCfzraI+ZV4PnLC4N3Fi/T7BIv2BK qyFKjpDRdA== Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: none client-ip=217.72.192.74; envelope-from=laurent@vivier.eu; helo=mout.kundenserver.de X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Alex=20Benn=C3=A9e?= , Laurent Vivier , Vincent Fazio Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" From: Vincent Fazio Previously, pgd_find_hole_fallback assumed that if the build host's libc had MAP_FIXED_NOREPLACE defined that the address returned by mmap would match the requested address. This is not a safe assumption for Linux kernels prior to 4.17 Now, we always compare mmap's resultant address with the requested address and no longer short-circuit based on MAP_FIXED_NOREPLACE. Fixes: 2667e069e7b5 ("linux-user: don't use MAP_FIXED in pgd_find_hole_fall= back") Signed-off-by: Vincent Fazio Reviewed-by: Laurent Vivier Reviewed-by: Alex Benn=C3=A9e Message-Id: <20210131061930.14554-1-vfazio@xes-inc.com> Signed-off-by: Laurent Vivier --- linux-user/elfload.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/linux-user/elfload.c b/linux-user/elfload.c index 174ee7bad677..e525901659d4 100644 --- a/linux-user/elfload.c +++ b/linux-user/elfload.c @@ -2210,8 +2210,7 @@ static uintptr_t pgd_find_hole_fallback(uintptr_t gue= st_size, uintptr_t brk, PROT_NONE, flags, -1, 0); if (mmap_start !=3D MAP_FAILED) { munmap(mmap_start, guest_size); - if (MAP_FIXED_NOREPLACE !=3D 0 || - mmap_start =3D=3D (void *) align_start) { + if (mmap_start =3D=3D (void *) align_start) { return (uintptr_t) mmap_start + offset; } } --=20 2.29.2