From patchwork Mon Nov 1 21:48:47 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Patrick McGehearty X-Patchwork-Id: 46928 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id CC6A53858027 for ; Mon, 1 Nov 2021 21:49:22 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CC6A53858027 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1635803362; bh=IbRWJ8sHiDLN8QkylyOCoJc8jKAiPf0yvRvfCaGxsmA=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=NNQ6QQ4bU6Lr7wEajG+M1zPeFGrnLQ3S+TMapoUU3YEFr5WhP1NgDQh4pCd/FHFqO 3wqodsvD9YuBxU2qlUD/9k+56B1l0i0HdBwFdhLGF9Ti4WzVF2iSpWSz/9OOTrgoBH cd2ChvLwnxuskfEO73d1hAux9AdvMYTJKcnTnHsc= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 7B5DC3858429 for ; Mon, 1 Nov 2021 21:48:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7B5DC3858429 Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 1A1KaUIU018757 for ; Mon, 1 Nov 2021 21:48:58 GMT Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by mx0b-00069f02.pphosted.com with ESMTP id 3c2aa3c1ms-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 01 Nov 2021 21:48:57 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 1A1LkEx9049467 for ; Mon, 1 Nov 2021 21:48:56 GMT Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2173.outbound.protection.outlook.com [104.47.59.173]) by userp3020.oracle.com with ESMTP id 3c1khsjk42-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 01 Nov 2021 21:48:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=c0VQsqGa35N8DwgCC8WhbsL32g6QvE9BBjqgg/83XVTZlDxApv2kPie5dnYM/kseRXhR9SfGimYEbhlMjeUBSwW9RYUZkQ3HwdhBAVb861pXu6Akknp8UkDgR3CtrAigMpjydsKj9nt7m8J635SoGiAdRSL3SH8Lzm2O7EECglAaLWslvlpZTsCh8DgaWWYLKfz5nRTXerMgUuwB7TFtS21Urq4Y1eQw1LTRNzWnEcPYB71LZHSYiTw0gtSNLCfi1SXxJQXbtVSk6FZCli1+oD+EbISmGwFcreAuTy7ZVoQrGYmTUJuwTpIOaWeZ7T8cL94iFYHpMvykXs+GahqQCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=IbRWJ8sHiDLN8QkylyOCoJc8jKAiPf0yvRvfCaGxsmA=; b=Vf1BljkRc9ncFlSjeGL8HfNbkFjAwll0KOjDQ5KALcHLujS0bvi3mLtGTCo1DlSbQ7YIlDWUMmYRjxTr0wwpDSyJVC+FWr4Ryhvd1WBj+HaeAPEiKimVAqDgpRD4IKGS2Q5d0l2I3d0IZ0mfCGIwb8f1egEy387wGmLreuoXXRf4bDuHT5bQqbAMSnjn9a6yBfogEB47qSAxYvslUcbOH7vavxnrgLMEv0gMewQL6cA6bxNL5PiLQ957HIGA7aI2j2xdeWV50wIcm9O3EmghPZJ/mIgQWH2jU3c56IUU4Y0kaNGBnuNieNqH2wcPT2v+KwGBDyDAxIKjcUnj5jtluQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none Received: from BYAPR10MB3208.namprd10.prod.outlook.com (2603:10b6:a03:159::10) by SJ0PR10MB5582.namprd10.prod.outlook.com (2603:10b6:a03:3db::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4649.15; Mon, 1 Nov 2021 21:48:54 +0000 Received: from BYAPR10MB3208.namprd10.prod.outlook.com ([fe80::cdd5:fa7c:b36d:dfd2]) by BYAPR10MB3208.namprd10.prod.outlook.com ([fe80::cdd5:fa7c:b36d:dfd2%2]) with mapi id 15.20.4649.019; Mon, 1 Nov 2021 21:48:54 +0000 To: libc-alpha@sourceware.org Subject: [PATCH v2] Remove upper limit on tunable MALLOC_MMAP_THRESHOLD Date: Mon, 1 Nov 2021 21:48:47 +0000 Message-Id: <1635803327-25346-1-git-send-email-patrick.mcgehearty@oracle.com> X-Mailer: git-send-email 1.8.3.1 X-ClientProxiedBy: BYAPR05CA0093.namprd05.prod.outlook.com (2603:10b6:a03:e0::34) To BYAPR10MB3208.namprd10.prod.outlook.com (2603:10b6:a03:159::10) MIME-Version: 1.0 Received: from localhost.us.oracle.com (148.87.23.9) by BYAPR05CA0093.namprd05.prod.outlook.com (2603:10b6:a03:e0::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4669.4 via Frontend Transport; Mon, 1 Nov 2021 21:48:54 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 3db46ea9-9807-402c-37d1-08d99d816678 X-MS-TrafficTypeDiagnostic: SJ0PR10MB5582: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8ScArWEJUWfIicAJk2CFOiw1buUtWRq6neI0S5GhsoI17+VtEnMPDkdUaoIywrb7eciTuCS6j7bNw3JXsEJBgUbqoUv3x7U1uWj5qSl5TC26P3H2/WnxF7w+Nw3SdjHUDUO/Fj2SGhviLxVmpjX1lZS2wxN3lxe1IVXLBQ5EOa5MAHsrjxm+14dLIrFB+0JzbMKSSpoY75MbmxHythycNPznsxLORUxYYWgTHSkaYsjFqKG1ky4vwFUoZcJkNPvl5HNvbrh03TLk1TjZPUmO5J3Yd8JVn/aJ2RMotF9f+8r9yVF3DZ0Z+pH0w5WvBanfVkGtpz1kJx9GFydT6+l+pD895uV3QqGLDgc0fsAbVs8Hc7XZBQelLWJ25iJQ0yofGwCJTjR4NFn8v2RDVzGlmTT9PQv7O0UPkvS0Vlu+m00Z0sb6WXDNJFDFSq9LU14i9JeYrfgTeSPGbN9OUiR3sHG0QWDxbigGx15YUXPjGxcoYzf7/n5HocYJit0iZfzScgeKSJhKRRAaGhLrXII0CayM4xs8hKo3Po4IfzdACCeGFcBUMpgQe8kM3TJZ9ezedyYbUY1T8Kp/WXgkSI7FnJwE5HRrdBrxI8m+IIzFg5qUyTfVJ29JXQyXGbSmaUtyfOl4gc6OLVAqWQ4wXC/+YmiNhqGi47Cpdnp56wMKAUluBY96tsoSfUqVUJOS+wE3XFwXKXSGbsSoURm99z1NQA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR10MB3208.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(2616005)(66476007)(956004)(66556008)(66946007)(86362001)(5660300002)(7696005)(2906002)(8676002)(508600001)(52116002)(6916009)(38350700002)(83380400001)(38100700002)(6666004)(316002)(186003)(26005)(6486002)(36756003)(8936002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: lZnrYANdXY4eBemI9nHDfQr22228oJWP6FoVlTM+9j3Qg6XZRI7mneEi4GRDm3K4CKuHxarOOg8OX0n5vusTBk4eOJqtOxH4xJwqvvX+iBO8qWo8KVc80ZIKAoskQ5ThL9CNapktBYj5NY6NU+bMlj9FgnwwS5PVD54gOXcrWDwWojqc+Zkc0yEvcKVYHTEES9pUgiS48ng04yrUy5BBDCmF2JJgiiRYGvDUocmwnZPMG6JlOykbzXonj/OGBGgNG0x2Hf4LaTeWvHmwIoQVGAqyPMw3kypQhpRAC6E2pZ1oXnykwQhSPH42QV14NmzmX1SW0hO+i7RTHjEk+29G8eSsWmDme3c+cXqdoPwpKiCUSU11pu07uUidwVxI6x8F3ghe82Fv2nfnf43S0OYG+Nu2n5hTcr9C1hgDd+oRaScCIjv8HMBGD3v746d7jzSILzRgXYg1VJlGBfOTQejCVNiWE9U2lVoimQA7pfJ6Uhw4mePSasuSJ8XoX9Rt1C0SCY4bZiqpVPAZBD62f0TR1MDG1vHwpbKpcJusn7MYgVyE///i4ACc1tXyzJtz5Z2OT2JiinNLtRl9y+BygHcB7j5AyqPgWNxpscgkyLnwJQ5TQ08c5V3f6CXeSYJgWJwkK1QZ+x2PYrQEbRZa7RqdxkcWJdkK1/U8Xg/k4/RJRP1gdkDPN0vpojGqjU7N1/GBmvljo19I6plEj7Tv3L+mGg2m0boSWfbjiiUyUL84UT1/O+0IinL6oN966RsKBKfuzW8det09HB8799UFIQ9WIN/mYTz3+Mq0wiSlguVfKb0VnM3odpyf9u/cWFmdV9WxZboJLdQAzM+NZM/hAiXfUMRFi0AiNJqUqrUjNFDB9JtTQh6f5U52UwQkApMj/kn9h+jEjSU3a/qcmb8mRImv0+LssM0BhyCWKxwfKrWkwoUxR1L6QhjqqBi96ll7abWtrC9IpZYGbNrqfUkKHyu87ofl7N7j11wNAPc0STTSYz0puMzfcKOm60vFh8uPwtoIm3StWkONWCA8fkqa3563NVdBYdWUADNelLtIMunfrnzKkllzojOGaaeYjybm0yyAFZvRK+4dcobAYW6JDbUg0IzFMmsxH6MQwpZcEG0dQjPKvtiwf5GdYzK12mgSXZIC4D7weOKyALoEIGu5OhPtHP0Yj3rO3bB38+pCjLCOQfvy/pzAP2s4NGcrXxZd4gl+C0GFDy+T8Lg3PIURJlcP4/sutouk2Lo+gAZPQSA3R4PuI9ed4HojmET44F1mUK2UDDiayNVan9ML3EH5WHFkoggzUNv8TUpNG19ZoAUrpCIZ+JOlpS6UwqHDiArrMqlQdkUh+umw9l4TeKW+n2rDEAdyXPcMYaG6CzsYTMTKhtqMupGEXhxlQPwmCdYlfIqivp5x+4QySU9o4brBHCrnm5HZf1Ij9pveRc9ixWt5XgjyNNi8QjhTZUE3xRTmbGc0ZIsElUnXY3vltV9h8gs06IyVVh5zEm9pK5e3bjCmtDSpitTFYi2VKoUdl57GIH0xo7qtpyGnn3x8ExluDGosEiuNwZ5gZsroLHh91la1zwzxTY6hFpagLwCQR2IsW5AzZ7PJxeFtFv9omrYLUgl03v6939/CbTp05N0wELqH4Ll3PNZqOrZ9smnxP0sT08pYYe/W170GFAp3Lvfx7AEaVQ== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3db46ea9-9807-402c-37d1-08d99d816678 X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB3208.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Nov 2021 21:48:54.6301 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: KpFWXBElFbb7cFZxd23OTkadxDsKg4fGo3uMVXfHGuR3AEU4+Ffhuzj4QAQV8iJ8lw3SptVR2QHETDLnXMukS+fe5GyVreA447G/dyMCbEU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB5582 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10155 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 adultscore=0 suspectscore=0 mlxlogscore=999 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2111010113 X-Proofpoint-GUID: EbLLk7EvkIrzcJ_99Oi5DBwi1S414Ipu X-Proofpoint-ORIG-GUID: EbLLk7EvkIrzcJ_99Oi5DBwi1S414Ipu X-Spam-Status: No, score=-12.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Patrick McGehearty via Libc-alpha From: Patrick McGehearty Reply-To: Patrick McGehearty Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libc-alpha" Differences in Version 2: Version 1 of this patch was made on glibc 2.28 malloc/malloc.c. My mistake. This version is made against today's (Nov 1, 2021) upstream version of glibc, malloc/malloc.c. The current limit on MALLOC_MMAP_THRESHOLD is either 1 Mbyte (for 32-bit apps) or 32 Mbytes (for 64-bit apps). This value was set by a patch dated 2006 (15 years ago). Attempts to set the threshold higher are currently ignored. The default behavior is appropriate for many highly parallel applications where many processes or threads are sharing RAM. In other situations where the number of active processes or threads closely matches the number of cores, a much higher limit may be desired by the application designer. By today's standards on personal computers and small servers, 2 Gbytes of RAM per core is commonly available. On larger systems 4 Gbytes or more of RAM is sometimes available. Instead of raising the limit to match current needs, this patch proposes to remove the limit of the tunable, leaving the decision up to the user of a tunable to judge the best value for their needs. This patch does not change any of the defaults for malloc tunables, retaining the current behavior of the dynamic malloc mmap threshold. malloc/ malloc.c changed do_set_mmap_threshold to remove test for HEAP_MAX_SIZE. --- malloc/malloc.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/malloc/malloc.c b/malloc/malloc.c index 095d97a..c1c4ef6 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -5216,16 +5216,11 @@ do_set_top_pad (size_t value) static __always_inline int do_set_mmap_threshold (size_t value) { - /* Forbid setting the threshold too high. */ - if (value <= HEAP_MAX_SIZE / 2) - { - LIBC_PROBE (memory_mallopt_mmap_threshold, 3, value, mp_.mmap_threshold, - mp_.no_dyn_threshold); - mp_.mmap_threshold = value; - mp_.no_dyn_threshold = 1; - return 1; - } - return 0; + LIBC_PROBE (memory_mallopt_mmap_threshold, 3, value, mp_.mmap_threshold, + mp_.no_dyn_threshold); + mp_.mmap_threshold = value; + mp_.no_dyn_threshold = 1; + return 1; } static __always_inline int