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 A2BB5C3ABB6 for ; Mon, 5 May 2025 23:29:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 499176B0083; Mon, 5 May 2025 19:29:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 449B96B0085; Mon, 5 May 2025 19:29:28 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2EA876B0088; Mon, 5 May 2025 19:29:28 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 1002B6B0083 for ; Mon, 5 May 2025 19:29:28 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 83697160D39 for ; Mon, 5 May 2025 23:29:29 +0000 (UTC) X-FDA: 83410448058.23.D8B463F Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) by imf03.hostedemail.com (Postfix) with ESMTP id B094B20009 for ; Mon, 5 May 2025 23:29:27 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=q3wJ4FDk; dmarc=pass (policy=quarantine) header.from=fromorbit.com; spf=pass (imf03.hostedemail.com: domain of david@fromorbit.com designates 209.85.214.171 as permitted sender) smtp.mailfrom=david@fromorbit.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1746487767; a=rsa-sha256; cv=none; b=woHC2c5KTjC8enV+CTJ4EqstL06yIIjjokTOBmA6+l6EAk/63VP9f64ZUKt0Wo0fvjLZ6u h+fLP7YqtvhRLM5hKoH7kdPV+HMYZCpsN3sWrGAYJrFwhRY1LxO0Fw4A1eIC3Z0EfUED+A pHuZyTuFC/cs6VdaCEayAkUTTCCwb3c= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=q3wJ4FDk; dmarc=pass (policy=quarantine) header.from=fromorbit.com; spf=pass (imf03.hostedemail.com: domain of david@fromorbit.com designates 209.85.214.171 as permitted sender) smtp.mailfrom=david@fromorbit.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1746487767; 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-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Cv/tk/5UA96wzruANBPiWqge+x6HatYw6W7cfsHGVHM=; b=b4DEpWLd4fHp/KcZzgUfZXLtPva38ZB7cjI1DakWE6XWCsP27yi2dHK0mgpZUHOHXbqA2u NA6m8ubt8FpgPwfIiOErvBhBxbULAr/x05EGHg2lRSLj/MD5Jybj7OlW4OYk7Jn3VOaH49 ZiVTY+h5zqgCia8wAegtqVf3aL698CM= Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-224341bbc1dso65446485ad.3 for ; Mon, 05 May 2025 16:29:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fromorbit-com.20230601.gappssmtp.com; s=20230601; t=1746487766; x=1747092566; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=Cv/tk/5UA96wzruANBPiWqge+x6HatYw6W7cfsHGVHM=; b=q3wJ4FDkVu6qbQReLBNmrrXFGYrtH3VCb/dXuRqI4zqDvgDMDN3ZrR9D5nMcAGZ1lq PsvVxL8do/xhZQ8ROn6Y9sIplYB2j96b9pvl2aDqY2T9Uf+y7hLUH68EcysM+MKZbsNZ NOicH2P4z7ZuAXSGseeBeVxPY4o7mQakMXGk0K/tpWJftLcPLDeoSyK5ZWXlFtsMwWwk PIHyOTvMVbYWZ0PR6sSugcsg+lcCynp7IajI7q/HrY8ddEuDvQh7V5+/+iIYGAoUdMcW W7KqKIkKcS8aYpLGkI8D5/Hy0MgMrKICteaNylCVB9EAAO6Wy4wQRRqNbqNJNi35cHJ8 dk3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746487766; x=1747092566; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Cv/tk/5UA96wzruANBPiWqge+x6HatYw6W7cfsHGVHM=; b=D6RYRzE209GDGTune7LaW4AKnzaj6VKq5cmDnnGHDatYcavix/0GQouht24rddoFoU nsLR7CelhaEXol/lJgDmZhpwZtfBTMXUQ4I29bdBEy67WnrBKy5/A5d1mv88Clz1wyDZ Oq/u+nhZK1XbbV6Upp+fA8QNun+NverYxaxBVeats6LIK/7O5vRJWsLjBJOZ0qiCfkfm rPN9Bonn9/vEYGUkPg328eBoo9Cx2byu0CT1jOHueELab/92TSWgIJ628jO8A5GXKXib 3jnEJ73u+TBR2xcw8vyu72aLVOK2HSzZQs8+hs5IE6vy1OEN0h/ysEuVLyOQuOXM5FA9 ffJw== X-Forwarded-Encrypted: i=1; AJvYcCX1AFjO/ID6zSB9v5pZi+zyNO6OMVwI2046CmPpSjA6rgW82+XhqkFN5zz4w5s/LoGnVnIlOqnKkw==@kvack.org X-Gm-Message-State: AOJu0YzM2mEN2D2zbRBlPV89Waq6gccXOH77T9m1ZISeOChwpVWj149I k573WS0xbfmniJ0gwMyxLbKki0Hsk3C1VDitMBPxl/2Tey2lPSGREO/s3wAEdI4= X-Gm-Gg: ASbGncvQsWzSXRtUGVHD2JHHi2ILDMjkdH+9K5Y+IHt/n9HKLC8t2OoYe7ilL6z173D QBO7wtvePv+9903azp8CDsV4tKtMdyFIFila2WDenVNXIOUWf33vwLEU551m1TtSQ/nBNwQdkTz FGz3yQmaJjrturlq6q4E1gt+f39KHXpzQq4Oe52CCMhUh0W9CLQgHw/rQtxFe95KOeklHTR684L MTocQ8M1xYVBtHG6ao36FxVc2VFB6j+4M62QBuJsGpq6UimozbBwPtaM4uZbIeVz4fkUVgRU88U R3XkmU3lV/DsCVir2SkIGn4HO8psHOsUr9Pg+mXAMKsLfoAw6Lw0r3WEjCtcxvRo62iuZZgvIrh qyBtzqLaCbh5CYw== X-Google-Smtp-Source: AGHT+IGNmATDG7nMeyEa4zdMPk47/229EKnS8GzX9yOLKZmhRqPzXmTD77cUZ0WryvDqqXCIZToVWg== X-Received: by 2002:a17:902:e394:b0:22e:3730:e7e3 with SMTP id d9443c01a7336-22e3730e885mr6733545ad.49.1746487766576; Mon, 05 May 2025 16:29:26 -0700 (PDT) Received: from dread.disaster.area (pa49-181-60-96.pa.nsw.optusnet.com.au. [49.181.60.96]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-22e151e992fsm61067785ad.85.2025.05.05.16.29.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 May 2025 16:29:25 -0700 (PDT) Received: from dave by dread.disaster.area with local (Exim 4.98.2) (envelope-from ) id 1uC5FT-0000000HTd3-0OdQ; Tue, 06 May 2025 09:29:23 +1000 Date: Tue, 6 May 2025 09:29:23 +1000 From: Dave Chinner To: Harry Yoo Cc: Jann Horn , Christoph Lameter , David Rientjes , Andrew Morton , Roman Gushchin , "Tobin C. Harding" , Alexander Viro , Matthew Wilcox , Vlastimil Babka , Rik van Riel , Andrea Arcangeli , "Liam R. Howlett" , Lorenzo Stoakes , Pedro Falcato , David Hildenbrand , Oscar Salvador , Michal Hocko , Byungchul Park , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org Subject: Re: [DISCUSSION] Revisiting Slab Movable Objects Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: B094B20009 X-Stat-Signature: uafufqaded1npksahgopmiyom5tobu6t X-Rspam-User: X-HE-Tag: 1746487767-105944 X-HE-Meta: U2FsdGVkX19f8Lmt1jWCC/UUkDJwlMhmJTgIko8T+HxPZSU92vmKn5YpK1E+EJtGFOAvmKgm11+tpaI2ya1leNPM77uXBXkPX3eJTq7ZpPZpm1FsPPHbA8Or88mDppRVG9rZMuvrsN3uYVysCOmPe91o0BT0KukRWN6mnWEKEp/zeYwu6UJtOOc4rd4cIdFf6xv2w6erTV4iH+y112rSA9xTZ/bH8tmBOPyfEGc/+YBBESD+Jvhv035OAaQbnHk18kTa+wJhVQlOGqR3SseIlSRVDEdF3m2sb5hV8EkQDH9FpSxRGowEW5NX17nAMgU0P6TLBQUCODtH2gDAtj+drTGDvER/7hNruJ8gO3qVLy4ebMUzLW3Q5WyhNmvC1NYU//qdJtB9pHF6yU7okQs3rHd0TycZonmJweq6nG3Ss3uQzVMixnKU/H0cbN0lUD9Qtb3h0vkbTuGeK3EiuIHcpsr4DQwc88L6yTcRirsOE77g+AbjS/PzDhmVocgQ2Le0YzUZwY4crcpHA492CfmBYzqr/e3xsDWUELFXBQavzZzqPsU+V9V4yN8IvPiy1gGcrMuqZrQLIyIMDEc5fn8hBvL/YL8W174CFRPe3ds8KREq6JKN/KyutCyz+xgF0Z74xNUpcJhmiWy+j9zOxoqkQB1wanw0YPuK85dunQcE1ejvCcldwqQC96W6mmz1P4BU46HEyxnpqpPyuxlHrnhwK+VrQeHnnIXNCmm4n5pY70/c0yQoSnsqSmW2Oq6jV1mRpKOS26EWWvnXRJSauPwIHPKxfK2yCBBXJHxqO2wEAgX8/jb2UiOt1AQQl/zj13n4EZriK0m1fhYKY0lBgt9kVsUFzpxY+Wtf1ygaugJwqS0DWc896bdSzrRAMUwfYxnmqiieFMjlCKpuXsLDT1MIJMXxfazzAEUh4X2XbXYgRSXGHzruFNsr10xl4Uc58zRTkE9j1IyHb2dZG+iOyp5 EZWO5Tmc P9rRiigb+n/HqK5WlyczU6z9WnP3fXekYukSVs8OWKGup/d2CkSnlkRG7Ug== 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, Apr 30, 2025 at 10:11:22PM +0900, Harry Yoo wrote: > A more general question: will either shattering or allocating > smaller slabs help free more memory anyway? In general, no. > It likely depends on > the spatial pattern of how the objects are reclaimed and remain > populated within a slab? Right - the pattern of inode/dentry residency in slab pages is defined by temporal access patterns of any given inode/dentry. If an application creates a new file and then holds it open, then that slab page is pinned in memory until the application closes that file. Hence if we mix short term file accesses (e.g. access once files (like updatedb) or short term temp files (like object files during a code build) with long term open files, the slabs get fragmented because of the few pinned long term objects in each slab page. IOWs, the moment we start mixing objects with different temporal access patterns within a single slab page during rapid cache growth, we will get fragmentation of the cache as reclaim only removes the short term objects during subsequent rapid cache shrinkage.... The unsolvable problem here is that we do not know (and cannot know) what the life time of the object is going to be at object instantiation time (i.e. path lookup). Hence the temporal access patterns of objects in the slab pages are going to be largely random. Experience tells me that even single page slabs (old skool SLAB cache) had these fragmentation problems (esp. with dentries) because even a 20:1 ratio of short:long term accesses will leave a single long term dentry per 4kB slab backing page... Hence using smaller slabs and/or shattering larger slabs isn't likely to have all that much impact on the fragmentation of the slabs because it doesn't do anything to solve the underlying object lifetime interleaving that causes the fragmentation in the first place... -Dave. -- Dave Chinner david@fromorbit.com