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 A08F2C27C79 for ; Thu, 20 Jun 2024 20:48:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3967A6B04C1; Thu, 20 Jun 2024 16:48:00 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3467B6B04C3; Thu, 20 Jun 2024 16:48:00 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 20E2D6B04C4; Thu, 20 Jun 2024 16:48:00 -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 002D86B04C1 for ; Thu, 20 Jun 2024 16:47:59 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 5DC51805B2 for ; Thu, 20 Jun 2024 20:47:59 +0000 (UTC) X-FDA: 82252453878.05.2C395CD Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf16.hostedemail.com (Postfix) with ESMTP id 0F573180012 for ; Thu, 20 Jun 2024 20:47:56 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=ZXLIHFfj; spf=pass (imf16.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1718916472; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=BQ73fyl4m5eQaYQQUTd6aAJ/BBzaFOXShdXodVNkSpk=; b=gXIvJzcGVxFKOGaFq2hqT/fq9COJHqEv4qkiVURsJ5lqq/paG+JF9M7L1HYzlMJg3WCacH INX82vTgJ08PjJHNDct0H8TJ7ZTrr/vwPPsj4DtnYkUIYAn8+hapz0oaBCaSXhIwcxIh3b AZpDEi0m4qo+qE4/OalGXlReokOpcOM= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=ZXLIHFfj; spf=pass (imf16.hostedemail.com: domain of akpm@linux-foundation.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718916472; a=rsa-sha256; cv=none; b=zGK/xkXD8L0JSYZi8bqUIA6N8v9/SJWsEl3Wz3ZRyJX03Df/mY6QbXb+943u4qhR5nIDbU +/z9ksbBX7WPTW18QtLJukzunaGI+B5bZqaVU93+TJrfa+BaHYOK5KhuG06hbFG2xuNnUa L2g0AleWqJGyy7ynSkMXYmhPFkic89g= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 92D2BCE291B; Thu, 20 Jun 2024 20:47:53 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A3B72C2BD10; Thu, 20 Jun 2024 20:47:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1718916472; bh=DaQWszFMeA6fJDrTZjgKRrC144b6pN3rrn1BQKHmRGE=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=ZXLIHFfjsGkKlIWhxGLAy97DeLTi+aoFu9X8dNC7PdIeLqcdMZmFMg+OMwk74ZnQx GvhOaojm8Zy/6+fZzgcL5TWgQmZ8Ke0h4lqgcy785mA7QT+kZD+DZKtst1q7F4VenU Y1R4VsGKNnyBsr9ANiWudxdx9gpp6WYCmklBeHe4= Date: Thu, 20 Jun 2024 13:47:52 -0700 From: Andrew Morton To: Sung-hun Kim Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, sungguk.na@samsung.com, sw0312.kim@samsung.com, sebuns@gmail.com, Stefan Roesch Subject: Re: [PATCH v2] mm: ksm: Consider the number of ksm_mm_slot in the general_profit calculation Message-Id: <20240620134752.9a63c12403282c0c7e728764@linux-foundation.org> In-Reply-To: <20240620043914.249768-1-sfoon.kim@samsung.com> References: <20240620043914.249768-1-sfoon.kim@samsung.com> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 0F573180012 X-Stat-Signature: 6eq6whsfqwer14m1ef6x53safs5smsnr X-Rspam-User: X-HE-Tag: 1718916476-838040 X-HE-Meta: U2FsdGVkX1+v7EpkewNWFAopgYJtKsZuxk0LHXsrGSP1ZvtI1rTYN8RGGHeXA8FCOXC90X21eeeFJpD74n6vkJO7q8/GOR5Kcb8hJBt16zqvCmuxbK8KtyGZhcPaIYtSgzziS290i7J1w9odFF1QQ6ZCTmIkNsN90uhxUNjCDWl99RqL2T+B2PSVniLxajLufDQOBMBBvo9kEIYnHlOZRnFhU6HY9AmSq6mSBxNbqJfwVodDOoL3DDpsbvtHZV8FjbT2M+A+ARiTShuqiwS0i0YqKAdj4+oCY3WaFgUZ0wqMVNPbzpcRHfQe8NTvK/yQQ6Lcw/6cjDcynWEzAlphfc7DHlcOyNyR9YALoMTHyS0F5DHMl99dSpDmIqn3shl197q/8tbBcDRZqxFwA8/qZ2jVi6NVAnBiqi9qp4tLWZhGhHr2RFKU58nBzV+P+fAye2qyMBVxkse/3V98vNNJGrAZbxCeiONqBHrXj9T4iXE8bxk9v5Ad6D4v/vENj2Yd9bOIBv8w6OHf0O1KAR255j4g00T0mivxHNxWK0NHkmp2CsPlUbiG9VgHCt9ey87bUoTvXs0hIbuc7FqP3tv9zbVjccLFiywUXxlQfZQpsATv0d5gkbKLMc/yX8utpTHgFjZozzq/Aq0osXPr7z0fiwnAS4cFky0itAjK4qqFE2zirgxO/ezNz4XE07ri5hiG9HcrcTGPspjCQuzcZcyOlSURNfLxCaGNFvVZ4dRbSx+VLmPZmlsNUzMw6keHLNFX0OQ2TfIR2fPxxBjF2nfWMeN6CNYtGyEA4wyqd717e/z4ns3SHN6QU0W/0D0q4+aCpX2gmlDeTiGPBR8+pwJDszi1rJSyBpCy22X0JSm3shwtHol3+clyR7q05OzTmKjEY/A4gmVYguBeorRTsB2+z8Qq3cExK5Ti883lvpaR5ewY2PFQL8ZOxGWQewEmU5cgykhcBmRA1yc+Ii/cu1P 7No531m+ loZ7jJU0A8n12vBXjm0uZTbURBBvH7TaOYETgz/WI6F9v3WsaKqgH/V2RlwpZ3Ii36C6ej9PF1mTD7nutWgMVwuGSa+X8Z10cULocYV+aYSEVa/Pts/6Nytg83gXD28iENNPh++bIGSrmvK7EljjsXaWXBjj84BBx4xbfa4Upnm6h+VHDObsNpbd1wd6lw4N3vZlioN4V9QON6j5RxpOUWNLPtn4qBnmYMuZmECSuK/IMOjHQDQ8OEWza5OEJQiC4lgMJkKnM532auT4kmTYJLYe+PDxKTOpDGMHNeAo/5Fpk79RNmgi0jLqNovPiPog457VA 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 Thu, 20 Jun 2024 13:39:14 +0900 Sung-hun Kim wrote: > The current version of KSM does not take into account the number of > used ksm_mm_slot. Therefore, when users want to obtain profits of > KSM, KSM omits the memory used for allocating ksm_mm_slots. > > This patch introduces a new variable to keep track of the number of > allocated ksm_mm_slots. By doing so, KSM will be able to provide a > more accurate number of the gains made. > By how much does the improve the accuracy? In other words, how much difference does this make? > @@ -3672,7 +3680,8 @@ static ssize_t general_profit_show(struct kobject *kobj, > long general_profit; > > general_profit = (ksm_pages_sharing + atomic_long_read(&ksm_zero_pages)) * PAGE_SIZE - > - ksm_rmap_items * sizeof(struct ksm_rmap_item); > + ksm_rmap_items * sizeof(struct ksm_rmap_item) - > + atomic_long_read(&ksm_mm_slots) * sizeof(struct ksm_mm_slot); > > return sysfs_emit(buf, "%ld\n", general_profit); This assumes perfect slab packing, no? Should it use ksize()?