From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id A174DC77B7C for ; Wed, 2 Jul 2025 17:38:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3D7316B00C2; Wed, 2 Jul 2025 13:38:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 387F36B00C3; Wed, 2 Jul 2025 13:38:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 29D606B00C5; Wed, 2 Jul 2025 13:38:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 19BD46B00C2 for ; Wed, 2 Jul 2025 13:38:23 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id B27C2B8ADC for ; Wed, 2 Jul 2025 17:38:22 +0000 (UTC) X-FDA: 83620033644.20.84279EA Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf14.hostedemail.com (Postfix) with ESMTP id 17703100010 for ; Wed, 2 Jul 2025 17:38:20 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=cUNrYxCc; spf=pass (imf14.hostedemail.com: domain of sj@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751477901; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=BLvjlz8JOsi0Yb4BmDEm93gC5bwU9lPFG3naX1YzC8U=; b=BhnEJ+MXiO03xJJVoc5Gi5jl6vgPZspoyulR8bfRWKbpik558cCSKldPrCET4eXUgD7J2g o7NcjWOQVT4Ebbz1ioJJ3Hq6XSUP9hDLvAdMLzlbTtWVxtL1grPBpQLC7lan5QewEtwy2L dZ/r9481azvGaRBbVV+0dcDKIJZ+GpI= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=cUNrYxCc; spf=pass (imf14.hostedemail.com: domain of sj@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751477901; a=rsa-sha256; cv=none; b=EFlBaER3drgoCcqjNU8Ubq7+euTPmtXDx2zBAhhbpwxagE3Qgp0fVzjAsyj/Iuh/Bm3Aqr J5SMMlNdvonVYmd5casxxTXZVULQZUHdJ7/m3Ls9OThH+adQzfgBNp5T82QaHYGkMR9KEx QJPggvGb0xRpGYZjERVxdkKAoJl3A+0= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 4F0375C6BB2; Wed, 2 Jul 2025 17:38:20 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D0F28C4CEEF; Wed, 2 Jul 2025 17:38:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1751477900; bh=9I9NerHyEGC5XpGaf6vyj6koIRuYlKsZkV3w3GMUvpQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cUNrYxCcZzuBz13YM2YeZJsZtE4GKg7jHOCCiKgquYherMBWxjxCZ2eKcQSur41ZB N3x2Ca82+HKFiDJlPSZ+2StkpcmfhVlnBeX/MifE0DbrDnmWicVqS2V+G2rNoIfMOY 0phWRzE0/GTpFX5SW3Xk/x68IAfmD3SeGg4R1OUPLwOKyIiXqEk3xFg5j4moVHRglQ xZH2d44IzclHTjffSyL+XPIbMrXpgeBnZp1k3pj1QIYg6JhJee1SO9RfJAEYAS77xY MyzxhdE+ZvUeEEomzPH5LCLm8y6MD++SAXjv9kWjkeblGsdx2y2lxZgW67cL/umEiw gQEpVXiLd6Vkg== From: SeongJae Park To: Usama Arif Cc: SeongJae Park , David Hildenbrand , linux-mm@kvack.org, Andrew Morton , Shakeel Butt , "Liam R . Howlett" , Vlastimil Babka , Jann Horn , Arnd Bergmann , Christian Brauner , Mike Rapoport , Johannes Weiner , Barry Song <21cnbao@gmail.com>, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, linux-api@vger.kernel.org, Pedro Falcato , Matthew Wilcox , Lorenzo Stoakes Subject: Re: [DISCUSSION] proposed mctl() API Date: Wed, 2 Jul 2025 10:38:16 -0700 Message-Id: <20250702173816.59935-1-sj@kernel.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <6d8832bb-b5a7-4cd9-b92c-c93f2c1fe182@gmail.com> References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 17703100010 X-Stat-Signature: bfb7auam4c81k6i89a3xafotczcd8kx1 X-Rspam-User: X-HE-Tag: 1751477900-593142 X-HE-Meta: U2FsdGVkX18+5Dg2tyaT/QEfz5x1WUzHVvL5+4CgKt9xEA3g37aVsxD/pNa9wWyKKnhHKP7gxBq9fIb3QBSLk4BV6Ly/oGzZ3x9YW3q1gKAa5NSV1pqadHX0EZg+ZbeFWd77FPtYAlBiud2FSdCm3Sqg/sCl4xDr4I02V7RTtw0DX1nimHftXZCCxKtUi3PF4ZO/vp2FI8Id1b21cJTTDSqVHaqiw8fsp6UrxtIUCfAG/OQTzXMSILvHDPhSt6DAfzf1+kaOna9pYomkAI3vZuUeoG4nIqfKELlHaTQrejcbt1Qt44OdxhLhsNBZVmYeMBLxfhrBCWF7CCreCo8iNT5mseSBpvqD433VypAm5WP8SrOiaudckUDi4FWyqpnrZYVlMECKfwi5RqRCvgzu2y3jgzevJt1F3mlWRCtn7xS8uWArztxonfyAfOfJ0qoeFBfoLjc8DACzOQqmzyjUWrZ1g4V6eBpX3CeHpgJjvDx14b0SzzImgSYBLjBh5IC1rYZpGgKbCUMzQVNkP2NRZ2rESYIwmIgdwBkb8TKIA5o6i6O1MfVQQOc36sy5KHCxhdoDaCHjewGSdHx0SRUFwizhdOLdETkHNhk4ZI3lpj4wE8iydkJUfh3FlLsaB1ptfMmWC4+BWy6G2UORNHUE920Hg6sA5fBRyw2BiADduk+AY3NT+rjKuqPe2QkcWpOkbopTUab/Qe++4jzWKaDSLBgqtf5KPr2W/i97DhWLst9DB3z8UqSqRRiV3LBg/pz7xCaY6zQl6/nLLO8DRk1SNLQn3/mx+AkHyvam+qh1GzX9NritCq6gEoXBWQWea7CHFpcsMr3t4XoRRgGtspieMlXQy0h/XbpeUwW78m8Ed8D/XGxROxuwmuuILWLV7LFaATMDrFmdNyYTCMDpL3dmwHn4ldTMsOLNZSaskpTLl1KNqgipSNsPrRgvqsli5GnkJf8cNdOSVjcRO+WsnHG Vd9UXraP jGIOzd5L0tmK0gzNM7ZhuFCkq6AfheFIh+t5FOB8PlY9voe28NbNbXgl6Cb65Z7+s/NIhUTU6q12gRxZcMQeCrqKdF2ezRShHgOU39t2BxjiY/irhnp1zcdY38k8y9BfBwquwvjnsVfb0giqOs/W/SvPBSEywrSgW8Zjb6XKu4Vw63XaFqpIXCfnA3sCuGRtZd16VHo7q+nONsZ+V8JzXoHutdka48TKGZX8vY2LvWQUDGNdj9NjCh7VCb8zE5gcmmyOBnDIh+Yx7MkpeZU3oTPJ3I3hd+tjA9F1uZQl2tfZD02yM8s1HmVvtgovtWuIb8Dcn X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, 2 Jul 2025 15:15:01 +0100 Usama Arif wrote: [...] > In terms of the approach of doing this, IMHO, I dont think the way to do this > is controversial. After the great feedback from Lorenzo on the prctl series, the > approach would be for userpsace to make a call that just does for_each_vma of the process, > madvises the VMAs, One dirty hack that I can think off the top of my head for doing this without new kernel changes is, unsurprisingly, using DAMOS. Using DAMOS, users can do madvise(MADV_HUGEPAGE) to virtual address ranges of specific access patterns. It is aimed to be used for hot regions, while using similar one of MADV_NOHUGEPAGE for cold regions. An experiment with a prototype[1] showed it eliminates about 80% of internal fragmentation caused memory overhead while keeping 46% of performance improvement under a constrained situation. If you set the access pattern as any pattern, hence, you can do madvise(MADV_HUGEPAGE) for effectively entire virtual address space of the process. DAMON user-space tool supports periodically tracking childs and applying same DAMOS scheme to those. So, for example, below hack could be tried. # damo start $(pidof XXX) --damos_action hugepage --include_child_tasks I'm working with Usama at Meta but not very closely involved in THP works, so I'm not sure if this works for Usama's case and others. I even not tried this at all on any test environment. So I'm not recommending this but just sharing a thought for more brainsorming, and that's why I call this a dirty hack. [1] https://assets.amazon.science/b7/2b/ce53222247739b174f2b54498d1a/daos-data-access-aware-operating-system.pdf Thanks, SJ [...]