From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2063.outbound.protection.outlook.com [40.107.105.63]) by sourceware.org (Postfix) with ESMTPS id BCC583858D20 for ; Thu, 13 Apr 2023 15:43:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BCC583858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com 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=CTDUTslhhP1WziwbkVinkz5VvV/NjKumWDNrGcQH+7o=; b=3KcWkWRfsd5nKMHk2pvuR/5qZTcy4OzbcS7Tfr7sLucqWawcmIIkD7M90JIZBa8i3GI5upSZ1eygZ8HE1ee6MYPSp+bhNlESUwTX1pIbuxgA42jsoSMYYCsMQ4iSJb3XJfChFTHixefWveSYXBEAiPu865SelK1wvTreyajJXlU= Received: from DU2PR04CA0004.eurprd04.prod.outlook.com (2603:10a6:10:3b::9) by AS2PR08MB8718.eurprd08.prod.outlook.com (2603:10a6:20b:55e::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6277.38; Thu, 13 Apr 2023 15:43:34 +0000 Received: from DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:3b:cafe::69) by DU2PR04CA0004.outlook.office365.com (2603:10a6:10:3b::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.30 via Frontend Transport; Thu, 13 Apr 2023 15:43:34 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT054.mail.protection.outlook.com (100.127.142.218) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.30 via Frontend Transport; Thu, 13 Apr 2023 15:43:34 +0000 Received: ("Tessian outbound 3a01b65b5aad:v136"); Thu, 13 Apr 2023 15:43:34 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: db132b8ba14325d6 X-CR-MTA-TID: 64aa7808 Received: from 644cb9463729.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C73B77A7-20B1-4668-BC17-778FCF0AC063.1; Thu, 13 Apr 2023 15:43:27 +0000 Received: from EUR02-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 644cb9463729.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 13 Apr 2023 15:43:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KMPm1LRi/tXzneg2DmSYR42ev3PwIhBD9RL0pxPgcE4amWyPsZr30zuNkJ7tUFjZ7UaaXfJj6FKxtNa1R6hADrJBmTxY9dfy18DUQdGae30C28yERvSmw1MP/ckVoCD6cGrMYfBQuIZfdNvS8N5WI5K8N83DDIlwWlPRuQXRyc5u5FFPVYPBZ/KmPfPDzw/Rlv4CC4VxLeru2krfsHWTu4srNdFBsS634s/R3AmRWiGaHk4iYJqG7jnjtylcwyY53dsMRg342RwHVZhEwZLI8E1w+6d1JeK4lm0/2pC46FRPfP3k9DUu4wL8Y6zW6EXudU/Aw0X+NqHc5mDHTkIxuQ== 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=CTDUTslhhP1WziwbkVinkz5VvV/NjKumWDNrGcQH+7o=; b=N4C3E8qbp5LJzivQm8t+Y3SUAZ+Yjp0E/LDf4s4tjIP/Ex7K6JjB4HaWTNOQTGGJaTDrf6msQe5GWwaOQrjN1XIqDQH0+kEQzRWTi8zkhVUs44v8oaeF3inDSZGr+mUq1SpCXPmQ+SOiDTnWCZ1WjS20Pw96iLKQFDfgIsvezjIiIqqc+Ituu29TbT0tvxONNVzl+r9ktmJHxQKJgrdeSnGGyqlXq2/wbUP0ya/XVmwnuf2Zn38lGN5V5eSpl1R8b0IFJf0RCvtfCQW0Py47Ykuom/MzcIjLj70QcxrT5V0p07KjTNIQVP4Y+x4pjB17XeyrZtQgiS+MDhQO9lffpA== 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=CTDUTslhhP1WziwbkVinkz5VvV/NjKumWDNrGcQH+7o=; b=3KcWkWRfsd5nKMHk2pvuR/5qZTcy4OzbcS7Tfr7sLucqWawcmIIkD7M90JIZBa8i3GI5upSZ1eygZ8HE1ee6MYPSp+bhNlESUwTX1pIbuxgA42jsoSMYYCsMQ4iSJb3XJfChFTHixefWveSYXBEAiPu865SelK1wvTreyajJXlU= Received: from PAWPR08MB8982.eurprd08.prod.outlook.com (2603:10a6:102:33f::20) by AS1PR08MB7450.eurprd08.prod.outlook.com (2603:10a6:20b:4de::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6277.38; Thu, 13 Apr 2023 15:43:25 +0000 Received: from PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::13be:967d:6e80:432f]) by PAWPR08MB8982.eurprd08.prod.outlook.com ([fe80::13be:967d:6e80:432f%9]) with mapi id 15.20.6277.036; Thu, 13 Apr 2023 15:43:25 +0000 From: Wilco Dijkstra To: Adhemerval Zanella CC: 'GNU C Library' , Cupertino Miranda Subject: [PATCH v5 1/1] Created tunable to force small pages on stack allocation. Thread-Topic: [PATCH v5 1/1] Created tunable to force small pages on stack allocation. Thread-Index: AQHZbhxsfEOqL4dfGEK3hU3sOOmz0A== Date: Thu, 13 Apr 2023 15:43:25 +0000 Message-ID: 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) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: PAWPR08MB8982:EE_|AS1PR08MB7450:EE_|DBAEUR03FT054:EE_|AS2PR08MB8718:EE_ X-MS-Office365-Filtering-Correlation-Id: 863658f5-0504-49af-8e9f-08db3c35d758 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: IVxvRaM81F7bu5SpmwbHqz8edzkw59d6we6kkrubFSfy2bgAHnCHyYBro0BZtx6QFUmbmbEdO1gQoI9HKV3jVaOIk15k/zE8ylmrYJ3hyBciuXa9shtNh6TZQHcC5jAWa89CnXalvrHtTNTMGvo9RipGS0F5BeuQnfhy7ikFMVNhPM4wJYAQyidSZkkxMIXVKvcYfloT1h0yfmsjtVMOtG8un9jesKgT46rcfrJjI0G/7tqWZTIuqW+g/evIzGjQkV7c4H5DMiDWsuF0PBAiTyhPKk8kSEkXHOzR9nh/VScH3VV96bd5jNuWmnTlZWGEjOhOWbWMOk/Kf4Z4mCzfSKNLZsbnjuvc5SnvVpGzju5zZ7VMxd0BE2UUdVCQZtn0DOs/TC+pQvH/yhhJsoECXgYBa9V7HSgY0SppXb1YKIHro6Q3VjwjCNbzGYyC3cMT4vWuwlxYwY4b9RmOrnRQC7+Ykswk944xK2peMa0ICajOl5peBVhYzwLamZLlIGgtnDqi2dJ6bNrunqk3Y0rvvVJAZ90djzT/RqgE1JoUKnOXkAg9PRUbyhbA5XnS4M04thmDFvWjLrkWjV038ap2MTEWcSjYoAcF0vf2/74EJAoHtadCno+AK/9vMO4aDabo X-Forefront-Antispam-Report-Untrusted: 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:(13230028)(4636009)(136003)(396003)(366004)(376002)(39860400002)(346002)(451199021)(41300700001)(76116006)(478600001)(91956017)(86362001)(6916009)(71200400001)(316002)(54906003)(4326008)(8676002)(64756008)(66556008)(66946007)(66476007)(66446008)(7696005)(52536014)(8936002)(5660300002)(38070700005)(33656002)(186003)(122000001)(38100700002)(6506007)(9686003)(26005)(2906002)(55016003);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS1PR08MB7450 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 2be9ca0f-dde7-4d4e-f365-08db3c35d1b5 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ENbDHAZHiKCu2VLHv+d4Jn9U1wtmKjma6j36wX/5tsJV4I3UdZ2J8ay610yZxzsZy7HKccORwiDTBHds3ydOKRPWl5y1VKc5rzvEAWs2RwMimh3mPFLmpxxAOoZ0JRo0inLKQUOEVBzMz4hsmUeUnJZ68cvdmtC6U4t6h0RLMDDy2se7EQJS71Ub1jWL++RdQMX4Ignd8n3yzlZcJmdVuKX4QEI5aQQxRCqUgKm00n3aiwMnFYDfcZlnJJ382MALbjjTCWkykohvSfzJnWjzCsSY+MLB0e6oVBM48BbT0PehpgjWZ+zgw3UU1hSSkxLgTRGLobkAM9HHBlzDNIVkXbis1cz0nrSv9qcvxUXNiXzZcW23/4KHNWkwKmQMz+SnA+Sz3+UHb0UoZEnnQEM6PiUQSa9DcBbWm6zc6NlGd+OrosFzpcPThRkXEj9J0sMakwHp5vviAIqmquktagLgksh5QIKV/I2kBPTWroC6P9j/WBgVI0jJs7haWx2+rrfEfs7sy9d20cSSgc6tBUJAGXa/ovdP6ougDqng54/Tj80G5BLOV17qjWBM6f+93EOugtHUMQufs5WBuzFi6/CMD+p9sn0fOIkKZGksgtxnBNh9rFXGpNSHH60xQ5684djqFR66mKMQMYCVCqNQUoVO84tuju0cN5uFTnIa11MQbfW3U/pxijzzcfBeK8kFDe6zhzJ42Vpch9sk0QhLR0CLRA== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230028)(4636009)(396003)(39860400002)(136003)(376002)(346002)(451199021)(36840700001)(46966006)(40470700004)(54906003)(36860700001)(33656002)(478600001)(47076005)(9686003)(26005)(107886003)(6506007)(7696005)(41300700001)(356005)(316002)(4326008)(82740400003)(186003)(336012)(70206006)(70586007)(81166007)(52536014)(5660300002)(2906002)(40460700003)(82310400005)(86362001)(40480700001)(8936002)(55016003)(6862004)(8676002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Apr 2023 15:43:34.6895 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 863658f5-0504-49af-8e9f-08db3c35d758 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT054.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8718 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,RCVD_IN_VALIDITY_RPBL,SPF_HELO_PASS,SPF_NONE,TXREP,UNPARSEABLE_RELAY 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 Adhemerval,=0A= =0A= I agree doing this automatically sounds like a better solution.=0A= However:=0A= =0A= +static __always_inline int=0A= +advise_thp (void *mem, size_t size, size_t guardsize)=0A= +{=0A= + =A0enum malloc_thp_mode_t thpmode =3D __malloc_thp_mode ();=0A= + =A0if (thpmode !=3D malloc_thp_mode_always)=0A= + =A0 =A0return 0;=0A= +=0A= + =A0unsigned long int thpsize =3D __malloc_default_thp_pagesize ();=0A= + =A0if ((uintptr_t) mem % thpsize !=3D 0=0A= + =A0 =A0 =A0|| size % thpsize !=3D 0=0A= + =A0 =A0 =A0|| (size - guardsize) % thpsize !=3D 0)=0A= + =A0 =A0return 0;=0A= =0A= Isn't the last part always true currently given the guard page size is base= d on=0A= the standard page size? IIRC the issue was the mmap succeeds but the guard= =0A= page is taken from the original mmap which then causes the decomposition.= =0A= =0A= So you'd need something like:=0A= =0A= || guardsize % thpsize =3D=3D 0)=0A= =0A= Ie. we return without the madvise if the size and alignment is wrong for a = huge=0A= page or it is correct and the guardsize is a multiple of a huge page (in wh= ich=0A= case it shouldn't decompose). =0A= =0A= + =A0return __madvise (mem, size, MADV_NOHUGEPAGE);=0A= +}=0A= =0A= Cheers,=0A= Wilco=