From patchwork Mon Jan 23 17:37:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Roesch X-Patchwork-Id: 47291 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp1743536wrn; Mon, 23 Jan 2023 10:05:55 -0800 (PST) X-Google-Smtp-Source: AMrXdXtsZ130uUj+MN6yYCeXnIrSZBpyjo46Qomz0iic83Ce+u7cpl3C3lZHjwAbVBiQhtdcdbT+ X-Received: by 2002:a17:907:234d:b0:81f:fc05:2ba0 with SMTP id we13-20020a170907234d00b0081ffc052ba0mr22849021ejb.2.1674497155608; Mon, 23 Jan 2023 10:05:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674497155; cv=none; d=google.com; s=arc-20160816; b=Kho89uHJTOkxzPKzFg/JGAsZm+OIatrhCMDDvDVMu0KXiu1UFV0bEYI+TcvT5dJ7EX yZIjcUznFHz2+wxStZcLYzUUeV8gXD/qhsWp/NLdzUwqgOnu1s3EmqhJIJW/Rp0h/es0 X/TspGX/UmKKtKrJruaYu37ErBrSYui9xSF4bRlNU9ytSJY9aRtIWDEyir3RPSvTU5P4 feY48S1gIKOrYebGZSFDKASdM5wEBDrFPwpoI9c5NyYxDLKswP1LMPIGDgIflh1wdzr5 C8EMtrLqaMP3khCF2hlTQqmO3tcwMm8DEA10I5tVIa+IgPNJUpG7eO/scgqXTE7YGPNZ ajdw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=OEwH+3PoAg0i63suZqVpZUf8rAexTmeuq4F/YsaSxAk=; b=eH/ZHX/KUpmVkI7vFbC++KGGEO0h+MQKP79jDtw0+9OajWVXo2MBlBbwD1ZhKvdB14 hrTmr16ZmibNXiEXiOenYW1I6C2+tgfdgDFTOB9jIQJeHxGFr+/ao06jIa/ZDPHDLnUa O86sku0sU6W/Cup/ai8xd2WCraI79pMiWznLVYo1nLLHYHkwC7Gz4NWszIRyG0PpSNu0 hzNTpf9UaAC3Zxq/PvaHN3YM6cqefqQpZE2jng2fLhRl7ryBnfrkq1no6/mIsOqcyPiW it1+rhxZIIvqo/TBr9f0iO6AmmVupdVCmx7Zj/tv2IATQEzXiOyx8ZxLDogPXzfa++Wg LoZA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e12-20020a17090658cc00b0087194db3565si27777218ejs.551.2023.01.23.10.05.31; Mon, 23 Jan 2023 10:05:55 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233254AbjAWSBM (ORCPT + 99 others); Mon, 23 Jan 2023 13:01:12 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39494 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231705AbjAWSBL (ORCPT ); Mon, 23 Jan 2023 13:01:11 -0500 Received: from 66-220-144-178.mail-mxout.facebook.com (66-220-144-178.mail-mxout.facebook.com [66.220.144.178]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 069212CFC5 for ; Mon, 23 Jan 2023 10:01:08 -0800 (PST) Received: by dev0134.prn3.facebook.com (Postfix, from userid 425415) id 732985616BEB; Mon, 23 Jan 2023 09:37:56 -0800 (PST) From: Stefan Roesch To: linux-mm@kvack.org Cc: shr@devkernel.io, linux-doc@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-trace-kernel@vger.kernel.org Subject: [RESEND RFC PATCH v1 13/20] mm: expose ksm process profit metric in ksm_stat Date: Mon, 23 Jan 2023 09:37:41 -0800 Message-Id: <20230123173748.1734238-14-shr@devkernel.io> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230123173748.1734238-1-shr@devkernel.io> References: <20230123173748.1734238-1-shr@devkernel.io> MIME-Version: 1.0 X-Spam-Status: No, score=2.4 required=5.0 tests=BAYES_00,RDNS_DYNAMIC, SPF_HELO_PASS,SPF_NEUTRAL,SUSPICIOUS_RECIPS,TVD_RCVD_IP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1755837529658261726?= X-GMAIL-MSGID: =?utf-8?q?1755837529658261726?= This exposes the ksm process profit metric in /proc//ksm_stat. The documentation mentions the formula for the ksm process profit metric, however it does not calculate it. In addition the formula depends on the size of internal structures. So it makes sense to expose it. Signed-off-by: Stefan Roesch --- fs/proc/base.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fs/proc/base.c b/fs/proc/base.c index 9e479d7d202b..a2b7779f76f6 100644 --- a/fs/proc/base.c +++ b/fs/proc/base.c @@ -96,6 +96,7 @@ #include #include #include +#include #include #include "internal.h" #include "fd.h" @@ -3207,6 +3208,8 @@ static int proc_pid_ksm_stat(struct seq_file *m, struct pid_namespace *ns, mm = get_task_mm(task); if (mm) { seq_printf(m, "ksm_rmap_items %lu\n", mm->ksm_rmap_items); + seq_printf(m, "ksm_merging_pages %lu\n", mm->ksm_merging_pages); + seq_printf(m, "ksm_process_profit %ld\n", ksm_process_profit(mm)); mmput(mm); }