From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2085.outbound.protection.outlook.com [40.107.22.85]) by sourceware.org (Postfix) with ESMTPS id 5DCEC3858D39 for ; Fri, 2 Dec 2022 10:56:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5DCEC3858D39 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RI6Ewbi5VheCVbr0k7oHwwkWtwhg7XrNlYSp6COPTew87N2B/YrKQjfzSSS1QIWRuW8sSaS4E7CkLTjMbsYgdbWL4k5oa9po1Dgw7sTLQv8mJyicGyjl7tg1szF6Le1Xos9ZGENm/fyKRfIDV5P6Tm1Hx2qZN0fVS9aox8iIdZRnBJ+ucAgPbkh2nrAbXOVEJBg7FSrKqigCO3xqiBmEJmprcxrKZnpD95Y8pJR4r3z5YguvrN3VIfTSKZHcjQ4zuhIBanGYUgsOEYU34A8d2J16KcrPYvKDoTJghwQUfhSqdc1FML7n79/QaQUISTn5fwJ5U8hV0/p8gD4UvKuIKg== 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=176FCbKdfM227bh9ZdKOLhlHn/f5r/KCDTZ28IsGBxs=; b=nADv0osKy9RkscPsSVFN/GKX57OV1Nv8P0WWs5kpHo/fOX3QudT7xuZakLBmqZ+LeXTOuKopX+i6tvJhY/+L9CMpMJo/26b27OlmAF5LOLfPQY2ghp9x1YGoz6/1chUWYkL8tirzNUuUTz2leCg3UB/JU10jcsDdnA3C4LB8Ca9jupHZgTimQ10ECWU8+GPm5nD3rbdRQL6EE4mi7omPLUrmAfYkqGux4oMkI3wsfKCADeczRtfDnhhMBTN7UOI/ar04kbXKxhgvK6Aeiqo9vV70+ItHAp4E1szCc8iy0CcwLCY6yZ4BOdytCoSkBGtKY03ebEV8vHw85X9xeD/5LQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=176FCbKdfM227bh9ZdKOLhlHn/f5r/KCDTZ28IsGBxs=; b=XexDUy7RpwUjZTfLHwjSpMZflKI5539tGr6u97DfxyfCn6k6UKby2uacATj/v9W8NV4zIPzffdoSQ0NsBWJxg1IhoTYeUEaaS/3JMGiGxTInVy/YM/6E8zbAQrSe7sYGpR+qG2pfQIudNUI5307AimZFw56zpP/NfW9XGhqbKJI= Received: from PAWPR08MB8982.eurprd08.prod.outlook.com (2603:10a6:102:33f::20) by AM8PR08MB5668.eurprd08.prod.outlook.com (2603:10a6:20b:1d0::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.10; Fri, 2 Dec 2022 10:56:30 +0000 Received: from PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::66e4:4940:d096:4f7]) by PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::66e4:4940:d096:4f7%8]) with mapi id 15.20.5880.008; Fri, 2 Dec 2022 10:56:30 +0000 From: Wilco Dijkstra To: Florian Weimer , DJ Delorie CC: "libc-alpha@sourceware.org" Subject: Re: [PATCH] malloc: Use correct C11 atomics for fastbin Thread-Topic: [PATCH] malloc: Use correct C11 atomics for fastbin Thread-Index: AQHY/cJS/cK/f0PorUWetLVbA8LI1q5aHYIAgAAXvhOAAEQcRQ== Date: Fri, 2 Dec 2022 10:56:30 +0000 Message-ID: References: <87sfhytir0.fsf@oldenburg.str.redhat.com> In-Reply-To: <87sfhytir0.fsf@oldenburg.str.redhat.com> Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PAWPR08MB8982:EE_|AM8PR08MB5668:EE_ x-ms-office365-filtering-correlation-id: dc8259ea-13db-47e1-63b7-08dad453de7c nodisclaimer: true x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: YDET9WaMjZP3KPo/9tY5T9Y4OmYKYFwrO0sdzYDekqRn/xn2tvREtklv4/3aRa2O5Ndg3+4vHILT85C7G3QL8LAkeHdknBzmaxgXKOXnC9SRDXWEaBSkmUgDj5O21CGgE7xKrinzh7SFLCBQ0BuN1SjcGwWdSDdsAzQfqZGZJh7kvL/iG+baWuGYidBmGju6yY7SO5JQBufHa98GCDN8x+cOX7qrJs6FEtEFgyRfTfkMLLS6jNRtVSW1191gpUgctKBd3E15uqCB3fGzwC4fQWM8Kn3b/Qd5kJFguvCkUC/y7yXJTg24HEuSi41YbShjGJ10rYtP6KdV6bPFW7qDJlHlxeDIDFXxzSZOApYReggw43O2OgmH16Om3sPnVpNc3DfqCfWktAttOslA5b+mKs1ev2sG1NS5V9eJdXz88L6SD7T8A4yeniyOa1VGHxczQPyt1FVcdi6M0P+7mi/WRnMCh5ydyk9nrhOxAoSFA80HoFF81xoyVUWcaKz4q0M1UfAqZAoI3InUJaEICSIkQezHTVDSmwhPcnn3Jwo8NS/3N181t+aYh8HdT64VScseDb5rBt8c471b60/tdR0HaBbHexmu5s6sFlKMwuENyrkVKuxW37M5/czqfNT/xqRunJgd2sSXr4Xfzu8CTImaJlZYFDSY5Xa+g8gQvxE5jokmQ2P0cfJpT6/KSuvrfDr2Mh4Mst3VxUQIaN76OcNc5A== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAWPR08MB8982.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(346002)(39860400002)(396003)(376002)(366004)(136003)(451199015)(55016003)(38100700002)(38070700005)(86362001)(8676002)(2906002)(66946007)(64756008)(4326008)(66446008)(66476007)(66556008)(4744005)(52536014)(8936002)(33656002)(122000001)(76116006)(83380400001)(110136005)(478600001)(91956017)(186003)(316002)(41300700001)(5660300002)(7696005)(6506007)(71200400001)(9686003)(26005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?Dvm8LYZdpLVRdjwb77TKiT0MKDJTawwKlUwadQqL+9Vs/t92wn8d00fQS2?= =?iso-8859-1?Q?Bhu/3r5nkFceaTOl5gqql4Jy5dMPF6NtjmaeqdSV68tyY3FebAr56jXNmH?= =?iso-8859-1?Q?mdf8SAG7sUcCpIQS2VCQOwm99YyLoNrFsDAVKE8Lt1hX6ASoPOmxu0MivW?= =?iso-8859-1?Q?HqygUb0HKWttj4+gjyp7N1h72T6jPl5HXQIUkvFXMcl3S38bDZXG1bjLJb?= =?iso-8859-1?Q?ZtKQns0UnfeLGO8YoaIAyZMid/dC4twVAFL0vdmhHcMFSTCtNReZb5XMHX?= =?iso-8859-1?Q?NwE51l0BRvjDAXyZBIV6JmQtkUFpBBTKx7AcVNHHjS3vMmXqPDu4czm9lm?= =?iso-8859-1?Q?U/znDle7G9MkeZ3SaqJdlBBjjT8QtCNfmzG0YSOpijuW5v5+90947D8Cz5?= =?iso-8859-1?Q?qUAqJrV02/Iu0dAp6KfxpPt36Tc/5CtjriHwVI9veMh6K7BVfC8jh+wwXy?= =?iso-8859-1?Q?W/W+Hx8+r7BT6PON4iSQlo+BsFL6YoMI7RDNMvhIMT7c8ivQ+I8y5ENVyz?= =?iso-8859-1?Q?B+SZ5uMJmz4iT2j2607jILQOW87vFh3eXadXC/Y2C7+fvo+Nyqp6Zn7tvX?= =?iso-8859-1?Q?OqAjxBjcfWSn+3rKkjWaq6VmLLU5vH8+F1ynIPMczU/fd/PBDXpJhhJyvT?= =?iso-8859-1?Q?CgNOG5/GQhihhtDBqKK1AS9EuLRj9PMGXlWwzw2GcijPADM4SAgQojRkqw?= =?iso-8859-1?Q?YCtKZG9hqB/1rIOv+TEMfKkpKfwQHBH9z5juhymApT6S2ejioEkRNsOzph?= =?iso-8859-1?Q?45l/A+Vx9HTy/51RDKem2RswUcFqiQI8bOKqsaijImhIOBJ6nKbNV1X11r?= =?iso-8859-1?Q?VARTX2Y8imsTQJs2lLR0JS+JZOHrJCAAY+qOGre/yND7ZRpZyddmYyzbtI?= =?iso-8859-1?Q?HgQZdPqGxyLiPa3MsHEJ0K5KjixdDTUhvfBbyqFnPdx1B8Tb+ugNWwe7BM?= =?iso-8859-1?Q?p9hVSIa0R4R+5pqAC/cuMMtaKm4qEtVY1znpQsQXOkW2MCZCyYud5i2wDT?= =?iso-8859-1?Q?pAPuaXP0pYaaH25JE5q9P0vSMen4GvyiGcl6VKmHd6ZQCgD6kX3saxA+nn?= =?iso-8859-1?Q?kxzbol2yZf4V/jhYhsB2FbKlsbKskwZk3sX3mMNMSWx0Tq87KHhGd1Pdco?= =?iso-8859-1?Q?DToAezAd411oPdRJQPaBClcIOzwsPvlqcn8qV2nYK9VrOd9mP+1xHYTRwW?= =?iso-8859-1?Q?VLveUyDE151aUdLrZ+NKuxRkIGabJJkLgBHINtWGm0LK5lK8lBZJz8orP+?= =?iso-8859-1?Q?y4cT3jOYCxYKkeK5IbEQsSjhNFa61adKvz9hguatiihRz/a5qwdEUUZXdr?= =?iso-8859-1?Q?i/OBlf/NX2YIri3lEFNSKRlas5PE/nCetc6Rmj1IBOr9Coc/GTSVUJYWZk?= =?iso-8859-1?Q?lP5/lBxhgPrwyP4R8z7nhbIDFkR7wtGePUVZ79q5j8FvrBJvHUKQVWWr7k?= =?iso-8859-1?Q?ilEGODYyMmboX5Tr2OxQFL09NyL/TrtAfglssgNLwivzskP1hyBHvkd9hI?= =?iso-8859-1?Q?GBOV/WHxu7qcBUcXTJxPqSCMaKvaiYidpk2RC05ZjbPLuH0IeUKIRFhCXr?= =?iso-8859-1?Q?KR60ykBC6juRzPPaOT6ZZUCYEgfXqLLYS2EZIftqqQ87Xmuef3CiQyXGh0?= =?iso-8859-1?Q?D5x0r1rdA4qnaFPvs+zsJLpMRx//uDLc1D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PAWPR08MB8982.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: dc8259ea-13db-47e1-63b7-08dad453de7c X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Dec 2022 10:56:30.6102 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: iU5FiaxS5Hc42lhcnwRLN4WeQ5KBvtd3fIl7eee82IiF656Vq5o5DDYS3oNmx17nSHijtvoVDjmbEZK5Mq4Hfg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB5668 X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi,=0A= =0A= >> Wilco Dijkstra via Libc-alpha writes:=0A= >>> +/* Atomically pop from the fastbin list.=A0 The arena lock must be hel= d to=0A= >>> +=A0=A0 block other threads removing entries, avoiding the ABA issue.= =A0 */=0A= >>=0A= >> If the arena lock must be held anyway, why go through the compare and=0A= >> exchange overhead?=A0 We know we're the only thread accessing it.=0A= >=0A= > Other threads are adding entries without the arena lock.=0A= =0A= Yes, malloc is blocking but free isn't and accesses the freelist concurrent= ly.=0A= It's a really weird design. Splitting the free list into a local one and a = shared=0A= one would be far better - no atomics when you have the malloc lock, and if= =0A= the local free list is empty it takes one atomic to copy all shared entries= .=0A= =0A= Cheers,=0A= Wilco=