Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2218732/?format=api
{ "id": 2218732, "url": "http://patchwork.ozlabs.org/api/patches/2218732/?format=api", "web_url": "http://patchwork.ozlabs.org/project/glibc/patch/PAWPR08MB8982F5F029936337C0F20A778350A@PAWPR08MB8982.eurprd08.prod.outlook.com/", "project": { "id": 41, "url": "http://patchwork.ozlabs.org/api/projects/41/?format=api", "name": "GNU C Library", "link_name": "glibc", "list_id": "libc-alpha.sourceware.org", "list_email": "libc-alpha@sourceware.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<PAWPR08MB8982F5F029936337C0F20A778350A@PAWPR08MB8982.eurprd08.prod.outlook.com>", "list_archive_url": null, "date": "2026-04-01T20:12:21", "name": "malloc: Simplify _int_free_chunk", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "44076fb7a6b89ae5602d175bb11b30b6f8d89578", "submitter": { "id": 67598, "url": "http://patchwork.ozlabs.org/api/people/67598/?format=api", "name": "Wilco Dijkstra", "email": "Wilco.Dijkstra@arm.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/glibc/patch/PAWPR08MB8982F5F029936337C0F20A778350A@PAWPR08MB8982.eurprd08.prod.outlook.com/mbox/", "series": [ { "id": 498383, "url": "http://patchwork.ozlabs.org/api/series/498383/?format=api", "web_url": "http://patchwork.ozlabs.org/project/glibc/list/?series=498383", "date": "2026-04-01T20:12:21", "name": "malloc: Simplify _int_free_chunk", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/498383/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2218732/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2218732/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "libc-alpha@sourceware.org" ], "Delivered-To": [ "patchwork-incoming@legolas.ozlabs.org", "libc-alpha@sourceware.org" ], "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256\n header.s=selector1 header.b=a9tFfj1r;\n\tdkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com\n header.a=rsa-sha256 header.s=selector1 header.b=a9tFfj1r;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=sourceware.org\n (client-ip=38.145.34.32; helo=vm01.sourceware.org;\n envelope-from=libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org;\n receiver=patchwork.ozlabs.org)", "sourceware.org;\n\tdkim=pass (1024-bit key,\n unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256\n header.s=selector1 header.b=a9tFfj1r;\n\tdkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com\n header.a=rsa-sha256 header.s=selector1 header.b=a9tFfj1r", "sourceware.org;\n dmarc=pass (p=none dis=none) header.from=arm.com", "sourceware.org; spf=pass smtp.mailfrom=arm.com", "server2.sourceware.org;\n arc=pass smtp.remote-ip=52.101.65.26" ], "Received": [ "from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fmGQq3bhzz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 02 Apr 2026 07:13:55 +1100 (AEDT)", "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 9EC104BA2E2F\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 1 Apr 2026 20:13:53 +0000 (GMT)", "from DU2PR03CU002.outbound.protection.outlook.com\n (mail-northeuropeazon11011026.outbound.protection.outlook.com [52.101.65.26])\n by sourceware.org (Postfix) with ESMTPS id 8D76D4BA2E05\n for <libc-alpha@sourceware.org>; Wed, 1 Apr 2026 20:13:28 +0000 (GMT)", "from DUZP191CA0037.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:4f8::9) by\n DBBPR08MB10676.eurprd08.prod.outlook.com (2603:10a6:10:530::10) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.17; Wed, 1 Apr\n 2026 20:13:24 +0000", "from DU2PEPF00028D11.eurprd03.prod.outlook.com\n (2603:10a6:10:4f8:cafe::73) by DUZP191CA0037.outlook.office365.com\n (2603:10a6:10:4f8::9) with Microsoft SMTP Server (version=TLS1_3,\n cipher=TLS_AES_256_GCM_SHA384) id 15.20.9745.30 via Frontend Transport; Wed,\n 1 Apr 2026 20:13:24 +0000", "from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by\n DU2PEPF00028D11.mail.protection.outlook.com (10.167.242.25) with Microsoft\n SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9769.17\n via Frontend Transport; Wed, 1 Apr 2026 20:13:24 +0000", "from PAWPR08MB8982.eurprd08.prod.outlook.com (2603:10a6:102:33f::20)\n by PR3PR08MB5724.eurprd08.prod.outlook.com (2603:10a6:102:85::20)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.17; Wed, 1 Apr\n 2026 20:12:21 +0000", "from PAWPR08MB8982.eurprd08.prod.outlook.com\n ([fe80::5821:707a:c30b:dd9a]) by PAWPR08MB8982.eurprd08.prod.outlook.com\n ([fe80::5821:707a:c30b:dd9a%5]) with mapi id 15.20.9769.016; Wed, 1 Apr 2026\n 20:12:21 +0000" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org 9EC104BA2E2F", "OpenDKIM Filter v2.11.0 sourceware.org 8D76D4BA2E05" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 8D76D4BA2E05", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 8D76D4BA2E05", "ARC-Seal": [ "i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1775074408; cv=pass;\n b=GGP165notEJgGHa4/ZB1JYMwI9nk72NljGFOmi1xT9yW5m+YL++0lM2giEmcxFCOiOUcDdfd0XllhmUneB7cwchSU1a9iEzwUzmCVXNboIy+Emq7Myd/qIGdVPF7igqTxQpO8vcN2cAK8izhGop4c2msrZjG3IfXRTxlE7PyP7o=", "i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass;\n b=c1HM2YQT9GB1iH3BDCA6XUpA/+HJ3rGlIL44M89hhPoxSjy7tity8qxqGUvThv8rbNM5mBz43pVzCiTYrlC6GENb8yGAXcJ946PvZSawrf1FPTHj5ZZT8/reqB54J4L9ySSXwEIUFF0onQ15Li6oe242pWkkNkkgYMhRdT+jNWDQh/uxb7NU3dIzIYJiF2bWn+iwA43zdosBBZdDtTdFPOZV8p/7JqT1c1iuAOV7I3SEGk0lO15SSUfRs+YBShrmhNgvpxsLCN2NhJfJGFUM4UJk1D5YXAgIQrHwUKjEvkIM6SvPZhytnW8pey/6me63Hj12/FhmeXYaspKUHSQM8A==", "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=YhKaJVOALzBX3Kxc04WJoMGhlxrsAh9cb59c+sA1ZlAJHg5Rl2nzja6t0jAW49AdmJRdpLSYGSwXuWoB7dV2hxnEBp8t/ZRR1H6tsk48EtefkzZYJduseSkcL7VbqeZUG+DZ6fvEH4SFDLUTU05RzSxnomPb0lngA111aiUsn0xC8jOwc96MxEGzvNY/044gc7Ewi0FKIsK/0/pJeReyyqkxj+RsULHUvc8DXM1qn/i8FyLjyVYB779gTyZcr/ybVM0NPxepLCJ3TNaYZ1IHOSr03VLqDdRRD7xRmlYPJm6kSNgcNyQh9V2M4W6jYYVbtAjONOkyS7GXq9qVKOjVYA==" ], "ARC-Message-Signature": [ "i=3; a=rsa-sha256; d=sourceware.org; s=key;\n t=1775074408; c=relaxed/simple;\n bh=CfmiUpBZPtQxQzs8TcNv5RfGMGflVckdtZNiguQhQTc=;\n h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID:\n MIME-Version;\n b=d7521GHAYVPQhW6fB/xd14nZDz0PNcQoF7o9FJtjkBSICdnlM24+XLSKK3J+HFKxj36eyCoXu2vFuhZsRTe8U9q8NrplttEJDl1M00dg8nzQXnUPXrkhcfcEdLj84BbafZKxQPEDzjKfMEidVeRiyW1iIo70sdrXx88Olw3GY0U=", "i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=qsP+jM4sYIBSZRs05BHyOEzYlNfdv/aNe150O0pnqy8=;\n b=fxfG943Ly/iwpUmssuXdAeKwcDUWkeiq13ZKAzb0k2OnLp8EyB4z8rMjm2bPfDPJiGML6tR+ARpy/HEYblZAiAh7mcdoeOdcpKzpJHlOcD+zVGUe1+erPKg4Ca3EcUKwpynNR/9JrrtMmeN8UqDQixr+dILaMRMmbjehGZiiI2FAwcmWSm0z/EJzOEnaAK6Gh4BPO9ExAbCxbIO9jigQdNnbkZcPMM8TfLw6Zv3L5kccmvQCPzwhu3BqNlFMFdf41yfvpdItrA//N8sB8Yq3s7bBOH/ZrpAurr2F4zRhFaDzs0HXM4bbpsyDTeQxBgJxbjhiCl+9oSQSX1H0wjJ0eQ==", "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=qsP+jM4sYIBSZRs05BHyOEzYlNfdv/aNe150O0pnqy8=;\n b=M0vN9ZmmkiIwUwphViPb86JPqG0rpVayMjZ68UQo3RXQb8NOjA3XU2yXQifA718BwEPX9SSS8dZP0/fkQtkKDppk31kKg6/gEdxP4sbgLrjWkSFQiRMN1cgyLsCs2TBr5LeqXIjbNY0Q5ZRk6hVV/As/xN23Y00JoFAZYxkOGDDoh8HvKJh0gSoNFOo0eUEkWJFgeFAPXvZiPapT23lmU/AToOJDu5JyNhurWhSDJvnlT27B46pEqLQvWdOPyM2gCb9V4IbooEVeRDPda6xM2ISI8iF75bnwLZ8i6Tf5zr4QV37YgoVsMJY+68c27kP5BcGJtLQA59IPyiaGGtsseQ==" ], "ARC-Authentication-Results": [ "i=3; server2.sourceware.org", "i=2; mx.microsoft.com 1; spf=pass (sender ip is\n 4.158.2.129) smtp.rcpttodomain=sourceware.org smtp.mailfrom=arm.com;\n dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com;\n dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1\n spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com]\n dmarc=[1,1,header.from=arm.com])", "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass\n header.d=arm.com; arc=none" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=qsP+jM4sYIBSZRs05BHyOEzYlNfdv/aNe150O0pnqy8=;\n b=a9tFfj1raGHOjG2O9ixJqROJfsJ7rma2XfGhtP7VXcWQVAP6TyfSDiXVOmHTJ7Ezs+MocaFemi/hG0Bu/D8xeJx3sGo9la9WNfJypx9l/QuxRgoxvcZ4VlIIyVI5XzeotWjVfx8mz/tL0kDmLUAUTjAjwyFi/rMz2k+dMG8N8uM=", "v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=qsP+jM4sYIBSZRs05BHyOEzYlNfdv/aNe150O0pnqy8=;\n b=a9tFfj1raGHOjG2O9ixJqROJfsJ7rma2XfGhtP7VXcWQVAP6TyfSDiXVOmHTJ7Ezs+MocaFemi/hG0Bu/D8xeJx3sGo9la9WNfJypx9l/QuxRgoxvcZ4VlIIyVI5XzeotWjVfx8mz/tL0kDmLUAUTjAjwyFi/rMz2k+dMG8N8uM=" ], "X-MS-Exchange-Authentication-Results": "spf=pass (sender IP is 4.158.2.129)\n smtp.mailfrom=arm.com; dkim=pass (signature was verified)\n header.d=arm.com;dmarc=pass action=none header.from=arm.com;", "Received-SPF": "Pass (protection.outlook.com: domain of arm.com designates\n 4.158.2.129 as permitted sender) receiver=protection.outlook.com;\n client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C", "From": "Wilco Dijkstra <Wilco.Dijkstra@arm.com>", "To": "glibc developers <libc-alpha@sourceware.org>", "Subject": "[PATCH] malloc: Simplify _int_free_chunk", "Thread-Topic": "[PATCH] malloc: Simplify _int_free_chunk", "Thread-Index": "AQHcwhPA6TdGhBAV2kWrQkTjgL4leQ==", "Date": "Wed, 1 Apr 2026 20:12:21 +0000", "Message-ID": "\n <PAWPR08MB8982F5F029936337C0F20A778350A@PAWPR08MB8982.eurprd08.prod.outlook.com>", "Accept-Language": "en-GB, en-US", "Content-Language": "en-GB", "X-MS-Has-Attach": "", "X-MS-TNEF-Correlator": "", "msip_labels": "", "Authentication-Results-Original": "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=arm.com;", "x-ms-traffictypediagnostic": "\n PAWPR08MB8982:EE_|PR3PR08MB5724:EE_|DU2PEPF00028D11:EE_|DBBPR08MB10676:EE_", "X-MS-Office365-Filtering-Correlation-Id": "8e5db563-47a8-406f-aff1-08de902b2106", "x-checkrecipientrouted": "true", "nodisclaimer": "true", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam-Untrusted": "BCL:0;\n ARA:13230040|366016|1800799024|376014|38070700021|56012099003|18002099003;", "X-Microsoft-Antispam-Message-Info-Original": "\n zcjORE0u7hhT1vyvQuTCbsDQTWTwx6plznJ5fkGGLSj9WZm/0X1XroTbpUqT/akqWn80GAHKOx9YFeGQx9ZI1y7i+nC246NeDQ+p6vgCkj4RnpESfF70RhKvi4oL8tbEffSCEsA0GAAOvhSQfRvapfz4cJWA9d/LLeTnOfXhDTT8tyAujO0npSXUhqhR1y6a0G9d5CbHqptJml5e3BrQoCfesZG2o58At7bH2Ag99lGKTA2L4v3w+HAJPGlEAWG/PmuggaY7k4aGc3au49otHtbu2QUfIzSmr7j2ULs10Ur7AptRPCONC4jATC6BlrKq9LHqhqW2cVpD26PVtIKwNsRe5BkXLa4nZB2JmEhA1nWaXBvnCe17jYlaNYkzx59zNjL0V/r2u0K+FyI39Mgqlz5tz/bMg7xwwHYTZ1H1FEywh9w61tVr91VLxYDinN+fc5BwY1miLMkPkjqtyROPu/mA6x9fQ+2w2o4ljXq4f+xghIvs0t/tfj7EnAdy9nExGmjLqFceoihjGaQmXtwM8kPEVKIf9fEoGQV32mJ95Vhywkka9d23aNn+1B6/1jhOHwOfwhzMAFaTA9aeKyCkbAspA1wNPffjHoW0zUpQKhxB6e/EgtXD2ZVBuvslTHL/ykG3fD0SnqZOFaJTwBvlAL9Z3Z1mT52MtTfnEhct50wwdlcVXloWJIDBGSgY4hFEXmOXckwEz/v76DnowNWcnvtdctoo1OCPiq32nm3d6+KBfcQaXnWthDlTSWeTFSTlxR+FxoIok/5OljFuqfSeVKfiRs1OI5dpqCWrHtUJlLM=", "X-Forefront-Antispam-Report-Untrusted": "CIP:255.255.255.255; CTRY:; LANG:en;\n SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAWPR08MB8982.eurprd08.prod.outlook.com;\n PTR:; CAT:NONE;\n SFS:(13230040)(366016)(1800799024)(376014)(38070700021)(56012099003)(18002099003);\n DIR:OUT; SFP:1101;", "Content-Type": "text/plain; charset=\"iso-8859-1\"", "Content-Transfer-Encoding": "quoted-printable", "MIME-Version": "1.0", "X-Exchange-RoutingPolicyChecked": "\n a8ckjvzhuBHkqkswIJqBbFzseHvyewz2EhoKaGGwJJIg+AOFWemohDtm+FnoiipDyEc9HKnDOgqmx0RpEOOUeu6PZUoHuuHQmVV44k+W0+TyTNv7Ol96JE+78QAjVA+Cjkg2H9AT+cWuA/dXrjwiwyX54Ac2QMuIA5pTDTomyLNGmzIMjJx+GN71eSnEGsyK8CD5TI9XEzMJvdn3RMQykWyWfs70pGjzXKhIjm942ZNT++UalexAPW7kwoPSauX+//ENBU+GqNCY+JvUxYhzDC+mkdj8IbU/EDoP9YT+TMwuVLyjT6vupbuUA8IqxmgfWLJFFVbtv1EG8PL8HNPiQw==", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": [ "PR3PR08MB5724", "DBBPR08MB10676" ], "X-EOPAttributedMessage": "0", "X-MS-Exchange-Transport-CrossTenantHeadersStripped": "\n DU2PEPF00028D11.eurprd03.prod.outlook.com", "X-MS-PublicTrafficType": "Email", "X-MS-Office365-Filtering-Correlation-Id-Prvs": "\n 58aef281-ad6c-460f-bad3-08de902afb98", "X-Microsoft-Antispam": "BCL:0;\n ARA:13230040|82310400026|1800799024|376014|14060799003|35042699022|36860700016|18002099003|56012099003;", "X-Microsoft-Antispam-Message-Info": "\n rRRNBEp27tVRb1R6Voxcjbmb5CAKQStHeC6A9RApgOfkBwBfwNeXYyyG8isSWPaiuUsz9qPGCHTSO/eYgysmmGoxLb8JtPpGveXCo/mMZD7BSUWodoUH1eZT2aGuWDywapeKiSZiJHeJR5BMrcDsTpDlEZYUzYEgspD6laEFp3EU20dFIWj0d3p23n+G+61rK5BgCy/Yxm0dqubGX6qr5TQ1aSrzwONFwKvaaRnbb7n5S553MwVqOlX4X2DKDTNZGMUX54kuyI5iRxFeAiEAfnlH4xB2DpqBRBFFOvVHEhVmBnD1arbbFe7LMGx1yP+/fN3w4nI8sDBa+sK4jkvGF1UatXNGTYlwXrro7FDzVnxTPFFePxXLQYIoZcoz/szgriXTowNLX0VVHWbnKtZiSUCNnvv29aFPDrEpf7PgKVwWC18zkZH8+V9ajRopfSJHaCCOZY33Yn1pPJMIedbzLZaoH3gRYe5si58YCxLzjyGSKYoEORzPtS7uzk28GzkHhLMt/KU9utgga1pInMX9CcIPosidom9EP8+AzBwFYkvOx4KK28rPXGrkZs8EkpHjW1LqAXOrMyKi/T0f2RholD/MHa7bhu3NlvtcIzJHjdGtdq2zWuskEWhMyE7awln6IYOHuTiHBkxzC+DEd0WJlMT/pfkXarXPRLLd95Rnbsia3xHoPXNT6lrbEbFKGivaplgYxcZsu/ToPD/BxpfQxNfFkuXX4dkK8uytbmQ+MweVf86MMeGGZm2RfP1DB2OqKRt/l9pij8a01a1yjiAv1Q==", "X-Forefront-Antispam-Report": "CIP:4.158.2.129; CTRY:GB; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:outbound-uk1.az.dlp.m.darktrace.com;\n PTR:InfoDomainNonexistent; CAT:NONE;\n SFS:(13230040)(82310400026)(1800799024)(376014)(14060799003)(35042699022)(36860700016)(18002099003)(56012099003);\n DIR:OUT; SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "\n l59GZH1ujyK1s0rMRpINBIQ38bFv6YqktdNF0cM2IOHuSKNIBme7bhBEVdc/A+pY5WiqAkkFSwoSOgPDj/XNtF/F9DHOg/x70L51ttKyK2o78CdfeBtNJ9ggDcA6vUotcmTj8BFHAzXnbGMG38udu0+hB5TJUCj72BQnTUZSe88GljNzUteeaxtPpXV3+EG4QuBXJvk0mCmxf+6nboxEUU9R2fIgK4j7pQkojnljxII0HW5kS8Rsp1KQVHSDRdo9uN7AVbAjV32JK2jbcvnKaF+Y/V79EsGIN8R7EfMeGxhTghPnKFVXKGYN2qFYW8iI9kCQfqUjpDg130/FS992TMH4aQP4PzQljIX7Ulnlg151e8nj1tBZ4B+7+w/1xSNgZ7kqEG2FWzDa2tVngnauRNQ4f2uNm+sow3AZBs2kjX10qgDOjsjzCZH1irYGzYEh", "X-OriginatorOrg": "arm.com", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "01 Apr 2026 20:13:24.4781 (UTC)", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 8e5db563-47a8-406f-aff1-08de902b2106", "X-MS-Exchange-CrossTenant-Id": "f34e5979-57d9-4aaa-ad4d-b122a662184d", "X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp": "\n TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[4.158.2.129];\n Helo=[outbound-uk1.az.dlp.m.darktrace.com]", "X-MS-Exchange-CrossTenant-AuthSource": "\n DU2PEPF00028D11.eurprd03.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Anonymous", "X-MS-Exchange-CrossTenant-FromEntityHeader": "HybridOnPrem", "X-BeenThere": "libc-alpha@sourceware.org", "X-Mailman-Version": "2.1.30", "Precedence": "list", "List-Id": "Libc-alpha mailing list <libc-alpha.sourceware.org>", "List-Unsubscribe": "<https://sourceware.org/mailman/options/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=unsubscribe>", "List-Archive": "<https://sourceware.org/pipermail/libc-alpha/>", "List-Post": "<mailto:libc-alpha@sourceware.org>", "List-Help": "<mailto:libc-alpha-request@sourceware.org?subject=help>", "List-Subscribe": "<https://sourceware.org/mailman/listinfo/libc-alpha>,\n <mailto:libc-alpha-request@sourceware.org?subject=subscribe>", "Errors-To": "libc-alpha-bounces~incoming=patchwork.ozlabs.org@sourceware.org" }, "content": "Simplify _int_free_chunk() and always lock if needed. Use _int_free_merge_chunk()\nfor cases that assume the arena has been locked instead. Move the errno save/\nrestore to _int_free_maybe_trim().\n\nPasses regress, OK for commit?\n\n---", "diff": "diff --git a/malloc/malloc-check.c b/malloc/malloc-check.c\nindex 49b623df12ffa7afe376b73b2ad222d357dc6612..d85986b23d1bb0beb5ccc29d380ca96daf8ef41a 100644\n--- a/malloc/malloc-check.c\n+++ b/malloc/malloc-check.c\n@@ -233,10 +233,10 @@ free_check (void *mem)\n }\n else\n {\n+ __libc_lock_unlock (main_arena.mutex);\n /* Mark the chunk as belonging to the library again. */\n (void)tag_region (chunk2mem (p), memsize (p));\n- _int_free_chunk (&main_arena, p, chunksize (p), 1);\n- __libc_lock_unlock (main_arena.mutex);\n+ _int_free_chunk (&main_arena, p, chunksize (p));\n }\n __set_errno (err);\n }\ndiff --git a/malloc/malloc.c b/malloc/malloc.c\nindex 6a888b0eb7de53ae7b814275e86d2bd2f06b5e53..af2a902320b2f671524ba826fe828ee65bfa9cda 100644\n--- a/malloc/malloc.c\n+++ b/malloc/malloc.c\n@@ -1024,7 +1024,7 @@ typedef struct malloc_chunk* mchunkptr;\n /* Internal routines. */\n \n static void* _int_malloc(mstate, size_t);\n-static void _int_free_chunk (mstate, mchunkptr, INTERNAL_SIZE_T, int);\n+static void _int_free_chunk (mstate, mchunkptr, INTERNAL_SIZE_T);\n static void _int_free_merge_chunk (mstate, mchunkptr, INTERNAL_SIZE_T);\n static INTERNAL_SIZE_T _int_free_create_chunk (mstate,\n \t\t\t\t\t mchunkptr, INTERNAL_SIZE_T,\n@@ -2403,7 +2403,7 @@ sysmalloc (INTERNAL_SIZE_T nb, mstate av)\n \t\t\tCHUNK_HDR_SZ | PREV_INUSE);\n set_foot (chunk_at_offset (old_top, old_size), CHUNK_HDR_SZ);\n set_head (old_top, old_size | PREV_INUSE | NON_MAIN_ARENA);\n- _int_free_chunk (av, old_top, chunksize (old_top), 1);\n+ _int_free_merge_chunk (av, old_top, chunksize (old_top));\n }\n else\n {\n@@ -2674,7 +2674,7 @@ sysmalloc (INTERNAL_SIZE_T nb, mstate av)\n /* If possible, release the rest. */\n if (old_size >= MINSIZE)\n {\n- _int_free_chunk (av, old_top, chunksize (old_top), 1);\n+ _int_free_merge_chunk (av, old_top, chunksize (old_top));\n }\n }\n }\n@@ -3171,12 +3171,12 @@ tcache_thread_shutdown (void)\n \t tcache_tmp->entries[i] = REVEAL_PTR (e->next);\n \t e->key = 0;\n \t p = mem2chunk (e);\n-\t _int_free_chunk (arena_for_chunk (p), p, chunksize (p), 0);\n+\t _int_free_chunk (arena_for_chunk (p), p, chunksize (p));\n \t}\n }\n \n p = mem2chunk (tcache_tmp);\n- _int_free_chunk (arena_for_chunk (p), p, chunksize (p), 0);\n+ _int_free_chunk (arena_for_chunk (p), p, chunksize (p));\n }\n \n /* Initialize tcache. In the rare case there isn't any memory available,\n@@ -3350,7 +3350,7 @@ __libc_free (void *mem)\n \t\t\t\t\t size - MINSIZE)))\n return malloc_printerr_tail (\"free(): invalid size\");\n \n- _int_free_chunk (arena_for_chunk (p), p, size, 0);\n+ _int_free_chunk (arena_for_chunk (p), p, size);\n }\n libc_hidden_def (__libc_free)\n \n@@ -3472,7 +3472,7 @@ __libc_realloc (void *oldmem, size_t bytes)\n \t size_t sz = memsize (oldp);\n \t memcpy (newp, oldmem, sz);\n \t (void) tag_region (chunk2mem (oldp), sz);\n- _int_free_chunk (ar_ptr, oldp, chunksize (oldp), 0);\n+ _int_free_chunk (ar_ptr, oldp, chunksize (oldp));\n }\n }\n \n@@ -4253,11 +4253,10 @@ _int_malloc (mstate av, size_t bytes)\n ------------------------------ free ------------------------------\n */\n \n-/* Free chunk P of SIZE bytes to the arena. HAVE_LOCK indicates where\n- the arena for P has already been locked. Caller must ensure chunk\n- and size are valid. */\n+/* Free chunk P of SIZE bytes to the arena AV (which is not locked).\n+ Caller must ensure chunk and size are valid. */\n static void\n-_int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)\n+_int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size)\n {\n /*\n Consolidate other non-mmapped chunks as they arrive.\n@@ -4265,22 +4264,14 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)\n \n if (!chunk_is_mmapped(p)) {\n \n- /* Preserve errno in case block merging results in munmap. */\n- int err = errno;\n-\n- /* If we're single-threaded, don't lock the arena. */\n if (SINGLE_THREAD_P)\n- have_lock = true;\n-\n- if (!have_lock)\n- __libc_lock_lock (av->mutex);\n-\n- _int_free_merge_chunk (av, p, size);\n-\n- if (!have_lock)\n- __libc_lock_unlock (av->mutex);\n-\n- __set_errno (err);\n+ _int_free_merge_chunk (av, p, size);\n+ else\n+ {\n+\t__libc_lock_lock (av->mutex);\n+\t_int_free_merge_chunk (av, p, size);\n+\t__libc_lock_unlock (av->mutex);\n+ }\n }\n /*\n If the chunk was allocated via mmap, release via munmap().\n@@ -4309,8 +4300,8 @@ _int_free_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size, int have_lock)\n }\n }\n \n-/* Try to merge chunk P of SIZE bytes with its neighbors. Put the\n- resulting chunk on the appropriate bin list. P must not be on a\n+/* Try to merge chunk P of SIZE bytes from locked arena AV with its neighbors.\n+ Put the resulting chunk on the appropriate bin list. P must not be on a\n bin list yet, and it can be in use. */\n static void\n _int_free_merge_chunk (mstate av, mchunkptr p, INTERNAL_SIZE_T size)\n@@ -4440,6 +4431,9 @@ _int_free_maybe_trim (mstate av, INTERNAL_SIZE_T size)\n if ATTEMPT_TRIMMING_THRESHOLD is reached. */\n if (size >= ATTEMPT_TRIMMING_THRESHOLD)\n {\n+ /* Preserve errno. */\n+ int err = errno;\n+\n if (av == &main_arena)\n \t{\n #ifndef MORECORE_CANNOT_TRIM\n@@ -4456,6 +4450,8 @@ _int_free_maybe_trim (mstate av, INTERNAL_SIZE_T size)\n \t assert (heap->ar_ptr == av);\n \t heap_trim (heap, mp_.top_pad);\n \t}\n+\n+ __set_errno (err);\n }\n }\n \n@@ -4549,7 +4545,7 @@ _int_realloc (mstate av, mchunkptr oldp, INTERNAL_SIZE_T oldsize,\n \t (void) tag_region (oldmem, sz);\n \t newmem = tag_new_usable (newmem);\n \t memcpy (newmem, oldmem, sz);\n-\t _int_free_chunk (av, oldp, chunksize (oldp), 1);\n+\t _int_free_merge_chunk (av, oldp, chunksize (oldp));\n \t check_inuse_chunk (av, newp);\n \t return newmem;\n }\n@@ -4577,7 +4573,7 @@ _int_realloc (mstate av, mchunkptr oldp, INTERNAL_SIZE_T oldsize,\n (av != &main_arena ? NON_MAIN_ARENA : 0));\n /* Mark remainder as inuse so free() won't complain */\n set_inuse_bit_at_offset (remainder, remainder_size);\n- _int_free_chunk (av, remainder, chunksize (remainder), 1);\n+ _int_free_merge_chunk (av, remainder, chunksize (remainder));\n }\n \n check_inuse_chunk (av, newp);\n", "prefixes": [] }