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 02CC5C77B7F for ; Fri, 28 Apr 2023 09:37:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2B1566B0071; Fri, 28 Apr 2023 05:37:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 23A296B0072; Fri, 28 Apr 2023 05:37:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 102FA6B0074; Fri, 28 Apr 2023 05:37:08 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id F0BD46B0071 for ; Fri, 28 Apr 2023 05:37:07 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id B104EAD2D1 for ; Fri, 28 Apr 2023 09:37:07 +0000 (UTC) X-FDA: 80730296094.24.C9BB080 Received: from mail-pf1-f196.google.com (mail-pf1-f196.google.com [209.85.210.196]) by imf09.hostedemail.com (Postfix) with ESMTP id D5328140012 for ; Fri, 28 Apr 2023 09:37:05 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=RaiDNepm; spf=pass (imf09.hostedemail.com: domain of xu.xin.sc@gmail.com designates 209.85.210.196 as permitted sender) smtp.mailfrom=xu.xin.sc@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682674625; 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=WTEzTPu2IUqI1aWq3K0d1qux/fcUnEztVJOEixtCdn0=; b=t4soJZIkviQOXWC4lN4R15JD7SdFIsDIa8lXXWTPnE904HNLBR3Eye4Io1qqaHgHv/CF+L 5k0hiwpZad+quXbIkONorH3Wleia/3XO3jDB5p2yCXWJ7I0TYE5UHrr35IRh7lz5DH9LC9 fBLBvY0cVy78eCGf0um6foX56dPRWkU= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=RaiDNepm; spf=pass (imf09.hostedemail.com: domain of xu.xin.sc@gmail.com designates 209.85.210.196 as permitted sender) smtp.mailfrom=xu.xin.sc@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1682674625; a=rsa-sha256; cv=none; b=S6MDWGtsZjUVOV5nQ1/YkhBzp3ogheaa0pw5qINdU9eyK2pnSz+DpsKdtp/BqjPGIaG6G4 fLCoSIbYycqNKSDZLdirUbBbktYAv1cYedusaI2sSPLe16XgHk3O6+JmSdYDF6LGfd7hd3 nFem/WpbB6Z8IfL+xAMJmGq/I/sn0HA= Received: by mail-pf1-f196.google.com with SMTP id d2e1a72fcca58-63b67a26069so11905480b3a.0 for ; Fri, 28 Apr 2023 02:37:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1682674624; x=1685266624; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WTEzTPu2IUqI1aWq3K0d1qux/fcUnEztVJOEixtCdn0=; b=RaiDNepmv9Qqx/jrvOwZq+WoNJf2ZVNNzl4ji2b3okLdKMX+7B3KMZL2cFT9mTB7ot Bi3MJzit+ncFn4FVvOR/TjWXYitG3oEujevSGG9UfjJR65GhO8ANWdfp/CB8mziqJw6w ASO5bJ4z8tn8ODnT3oO2mOj+at+zlWzQ5t64LQ0nahw5QWmSiOqq6aBKefQC/fkF4DLd WYPqY8hmVFM4CEZX6eWj23Si/xVbiZIfC1PvqWSN7xl888AjzsRCYL32K1inCg+wLoIT zmmRSYbUYm2YgOsyn2V+SIsoAT0LR93l6og3veH8T0lM2c73pCa8EMihimYNvh5qo3n/ MzjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682674624; x=1685266624; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WTEzTPu2IUqI1aWq3K0d1qux/fcUnEztVJOEixtCdn0=; b=F85DgqaSJ9uus8sEf69S+ePxtgNtMi5/eS5KEhsG5z1hc/IRTn/UoOKhNyki+DhIEB GDGxUd3N3pJNmkBX8Z1owWnq1FiMnfOtXpR7Q6N2YQ0SQR7BGymAtfl1RHxUf0Vp1tU8 XXnMFCrcMcpBc41c6TMQVRZvvFHtqBalU3dNoP74lfDtPCzlgsCjoNnzbyr0ARD/RvNh A/GVA0rQZ+/gysi2oGpjm7jAOPtyPpe7dg7SwKWh+f//bWckPBuQHUF2bbTlNaDrNKh9 2joSjTHN9D08uSZuTEPDu9R+bwRnFz1YWq5eXpof5oKRog5IMI8HXkBYmFXAeSIkonVH k0XQ== X-Gm-Message-State: AC+VfDzCt3hFsdS8kbF48uy4u++C1v8kBHPhuEPnFC0X2Qe6fYwRJN8/ Z2HkIiBSigEGPFDskpnOPg8= X-Google-Smtp-Source: ACHHUZ4DjfNE11FGNiMCbCrke+rYMVWKogo2JxoZLEfw/P7rLMcKpdWVjpQcH2dQuoOaSJ8hsfrYjw== X-Received: by 2002:a17:903:124f:b0:1a6:7fac:1b7d with SMTP id u15-20020a170903124f00b001a67fac1b7dmr5547750plh.59.1682674624574; Fri, 28 Apr 2023 02:37:04 -0700 (PDT) Received: from localhost.localdomain ([193.203.214.57]) by smtp.gmail.com with ESMTPSA id n19-20020a170902969300b001a6db2bef16sm12872864plp.303.2023.04.28.02.37.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Apr 2023 02:37:04 -0700 (PDT) From: xu xin X-Google-Original-From: xu xin To: shr@devkernel.io Cc: akpm@linux-foundation.org, bagasdotme@gmail.com, david@redhat.com, hannes@cmpxchg.org, kernel-team@fb.com, linux-doc@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, mhocko@suse.com, riel@surriel.com, willy@infradead.org, yang.yang29@zte.com.cn, xu.xin16@zte.com.cn Subject: [PATCH v9 2/3] mm: add new KSM process and sysfs knobs Date: Fri, 28 Apr 2023 17:36:59 +0800 Message-Id: <20230428093659.23962-1-xu.xin16@zte.com.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230418051342.1919757-3-shr@devkernel.io> References: <20230418051342.1919757-3-shr@devkernel.io> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: D5328140012 X-Stat-Signature: z3btrm4awrsqqja8rmwftnhbf6henome X-Rspam-User: X-HE-Tag: 1682674625-769055 X-HE-Meta: U2FsdGVkX1/RwapiifbnsnxAOkVwa0D/arMCOqBKSxWtP9pqD8pWw3VYpxEUBUe802mLjkoS5Bbr/Ira9a+r6bA629v67NG3H+nUKg+eXoSpI5GlatC2a4xpbRVBFDcMHgHWC8/pv1gYBO0gQUlfn+HKSVWzG7EH7+OJSeaB28sE98mE7lGAMD6N04UMZ98628Y1VIWKpyG4yX3yDJr87/3SBQzgvv/HW9UM86IMrbUaXbCHX8flM0R3OUsrajBxJ7L4UMlw4M59AB6EwTWTUSfRle0b85/vYFw81TVHBMoO+1mtpL7503lNcJxsqHggv34Q/kYodI4axRFPKwGnjF4AnHIh6oQg/v3XnbOBZVJJaLduwIV+wytARYEa0Pc/onM9De2o3zNWq3g9QR/sKhr2QoaZRWPOPaiitkbPBwcAfd17yWKdV9Djvr7DwyfdNgm82GQUzh26NbFPH21bSNrQI9YYUCZnsGz7rAGwROC1PnHJ3FWvlUKodkNstRLRQCk7T6c0YXzj2SlFxE2zV3C7Gve+Kfek2OjC2fou6hbiDED+pTR88GwThIcMA4TK7FhIxeaEfoLcr+JcGZOEYqKMtmN5KeHtAmlWmEfgaFtGI50EinKuOM5VMk1XKb7Nahc07AcP2dAGlXDn1Ucz2EKe2z+DtUPzW/TpGPfYzCqjl5SbDZGxkmZiisMHhA+klsBPxW5MeL+i4tlGu8Vdf8+m8eMooAhehcGKFkxEUQVWBfQPWStkgRfA3M8MGy+90fLTzscp8EbJ/pfQOAThCSGhIYfzMqUIwRrCwcK0FpkYMY6nniijDl8NW0WQNLQu0yXSD6rfsuLYnc41u5pJ59/LmwtJ0IxFv7huV8ZWrA8IgtO8JWdO9blI+jhs5IbHSbbY/NoOoayaCwBEEbRBy1JcrNyJjH0j3WK7CujgiMaM9JdQdPzfZme53e8HokjHTtxYpEGUMQLdyxGIMBP iRRJSqwp i2jBMhwKRvEokQXbOANJQXqsypaW5TcnsHKppe4zyEyfbVMc6BI1ihojg+MAXm1whftgMEl7Ft13Qlh1BepnC+KEi+jrAtotIoRfolwIBeA27+XvMyp48SxH8pzpbWu1QnfC8XKwlZI15JcbPhADHivXUsTek52Wy9M70HpHeYJKXiwc/gbJ3nz9z6DBk7+1ToqCGPC3qISpbDJGYUrgOVA2qB5VdOC2M7ymjdGongcSTxRTsvmPKQgho6TyvmHQnFbDhSb2vfLBwkTDUwE7LKLypQSqNBQWF8p5Td7CL1ntCcD3c6r+gUVkca8ytpRBrMTz2ETmgUOdih6xQOQEH1ArH5oj205VSMJiYto/6Ma9l7PORdIjkNTusetkB++AvZMxHtymFPCJhd5COdnH/uYftmFlv/vBF2k4hKp8UnpJ9nGyfk8WvUuj0yiW3n/fieedpxfMYPZ4jnkH9xQbd3LCA0frnSvb+vx8D/GUOQhHqV5TCkYoz+or4p0oKIdVP7bPugqpnmCwfUGvWIECJgqZrL3LJYjCOXAWr+u5oAnUsKBLZ5AtgxdAWgeE5Dj2gGoj6R7h4vran7vB0dMkoGZ39L6EU8Qy4+c7R6I8kt8XDiMaCmr13TBhuOidnZ+DwAkvjHzFSijEOD91nXrQa36N7ZTHDzE1ru2YCsNSgzdRIo515sD+JaAUuZK2Gp50RQlklg0MAJb3/jqT4J8BPdlBcDK/6yy2UkGzB0oYT5MZxt3sB9boNZjZ3ymv1T5oVkF8g8zSiKA0xUK/eMclrjz9GNkX7wRgrktgNkW8JjpatwL/WIVnAQL0ymlnVqmtJGPEf+RK7Ay3NOQIkBSUO5hOh9GGD+ajWVR+mw/dyv3pfJ9A= 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: > This adds the general_profit KSM sysfs knob and the process profit metric > knobs to ksm_stat. > > 1) expose general_profit metric > > The documentation mentions a general profit metric, however this > metric is not calculated. In addition the formula depends on the size > of internal structures, which makes it more difficult for an > administrator to make the calculation. Adding the metric for a better > user experience. > > 2) document general_profit sysfs knob > > 3) calculate ksm process profit metric > > The ksm documentation mentions the process profit metric and how to > calculate it. This adds the calculation of the metric. > > 4) mm: expose ksm process profit metric in ksm_stat > > 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. > Hi, Stefan, I think you should give some credits to me about my contributions on the concept and formula of ksm profit (process wide and system wide), it's kind of idea stealing. Besides, the idea of Process control KSM was proposed by me last year although you use prctl instead of /proc fs. you even didn't CC my email. I think you should CC my email (xu.xin16@zte.com.cn) as least. > 5) document new procfs ksm knobs > > Signed-off-by: Stefan Roesch > Reviewed-by: Bagas Sanjaya > Acked-by: David Hildenbrand > Cc: David Hildenbrand > Cc: Johannes Weiner > Cc: Michal Hocko > Cc: Rik van Riel > Signed-off-by: Andrew Morton > --- > Documentation/ABI/testing/sysfs-kernel-mm-ksm | 8 +++++++ > Documentation/admin-guide/mm/ksm.rst | 5 ++++- > fs/proc/base.c | 3 +++ > include/linux/ksm.h | 4 ++++ > mm/ksm.c | 21 +++++++++++++++++++ > 5 files changed, 40 insertions(+), 1 deletion(-) > > diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-ksm b/Documentation/ABI/testing/sysfs-kernel-mm-ksm > index d244674a9480..6041a025b65a 100644 > --- a/Documentation/ABI/testing/sysfs-kernel-mm-ksm > +++ b/Documentation/ABI/testing/sysfs-kernel-mm-ksm > @@ -51,3 +51,11 @@ Description: Control merging pages across different NUMA nodes. > > When it is set to 0 only pages from the same node are merged, > otherwise pages from all nodes can be merged together (default). > + > +What: /sys/kernel/mm/ksm/general_profit > +Date: April 2023 > +KernelVersion: 6.4 > +Contact: Linux memory management mailing list > +Description: Measure how effective KSM is. > + general_profit: how effective is KSM. The formula for the > + calculation is in Documentation/admin-guide/mm/ksm.rst. > diff --git a/Documentation/admin-guide/mm/ksm.rst b/Documentation/admin-guide/mm/ksm.rst