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 BD933E77188 for ; Fri, 10 Jan 2025 09:57:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 43F7A6B00AC; Fri, 10 Jan 2025 04:57:39 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3C8E46B00AE; Fri, 10 Jan 2025 04:57:39 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 241DF6B00B0; Fri, 10 Jan 2025 04:57:39 -0500 (EST) 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 F18206B00AC for ; Fri, 10 Jan 2025 04:57:38 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 76002438A0 for ; Fri, 10 Jan 2025 09:57:38 +0000 (UTC) X-FDA: 82991090196.26.CA3D1BC Received: from mail-pl1-f195.google.com (mail-pl1-f195.google.com [209.85.214.195]) by imf02.hostedemail.com (Postfix) with ESMTP id 88D6F8000D for ; Fri, 10 Jan 2025 09:57:36 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=EpWORSp3; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf02.hostedemail.com: domain of xu.xin.sc@gmail.com designates 209.85.214.195 as permitted sender) smtp.mailfrom=xu.xin.sc@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1736503056; a=rsa-sha256; cv=none; b=HygrgVKNAoocMm+VzfPRJ2l+7S5kM46kfVt3VFUQiQLIvJsE/R1yhhHnKqqm+HqrD7gizI e3/qTfQLiAvbjNRR2lWWKAXXxpT3f+QsvhyholdgUd2J4TJuXcan6uJSRV4lqLCJmB2Q+5 K9Uw9w0ih4IsSicf1Dmfgiu+1m3zmks= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=EpWORSp3; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf02.hostedemail.com: domain of xu.xin.sc@gmail.com designates 209.85.214.195 as permitted sender) smtp.mailfrom=xu.xin.sc@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1736503056; 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=Duw3/ndnY86PXGNZcla5r5A2fqGgkDUfYOYJe+kw63M=; b=jad/uu6B39i3c3KFcvZYKk+S3+p4giBopT5USd21EM2OM43CBPsGmNA+bpnVUhTMqQj/WX IOCCHg3XYqj5p/oreuOKi9wmgeq/QPz19YhNLDkuoQBHlZ7scJd1ccsCAPy3PooZiyNxos 36fWFHDWuJ/gu+9zIINIpwQd6tBC7OM= Received: by mail-pl1-f195.google.com with SMTP id d9443c01a7336-2166360285dso30991575ad.1 for ; Fri, 10 Jan 2025 01:57:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1736503055; x=1737107855; darn=kvack.org; 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=Duw3/ndnY86PXGNZcla5r5A2fqGgkDUfYOYJe+kw63M=; b=EpWORSp3eyODtz5OZ+mDiwpa/dOpYucMSAwPD8/BtkgGTrihe5GV6SkDIkJvpl/Gq3 WuuKEBd6f//ODimRfANd18zbN3+kCFkz/dkTQZhWehzg+PeD/E9zUFosYTNGeSYUe9zS vv8WP84Hkznp60Al/zphVD21Q4LffhOs8ENjMjgdcPnCRcIteD9xcGAmmcY1q4Jgsdir fPKto/gOtQp2FbnWrgnW2D8HSpNEoVj2xCH5Fq/7XrR/CPbxTjDIn8l1DBUBGFNXfgDS 7VDgXngHI9jJcTuPBYJYDRkLv+zPe9sR85D9xebdEyGpndkoWm0DdUURlIdSgxKwHPCV 9Fmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736503055; x=1737107855; 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=Duw3/ndnY86PXGNZcla5r5A2fqGgkDUfYOYJe+kw63M=; b=X/qi3vg5XYO/jEc7c+81IugT4Wyu6QNFT8AjLdQs4NvFvTm9ev2n0xXXGT209sEsFx AzzIL4PFh5KpAS4iEL0+Zm81oCKYcZPN621wS3ECnY+rcv8aFa75/eUBO6C0/yUgUQfY l6ZPNxRlbGnHE04lKT38DrfsvAjqy7tThV2RWhIHeSw/poJQooxnkXdHMP1lMyqp0Z6o n8Og9A2OYb5+U4PPGnLxXQgCEucdsyGsmz6QucXIvyNzXUpyLm5iM3MaMiHJcJtxaCRS F93VlS928+qEYr836GzJdwOmy7SNRalX5+7Xfm0kfygv+clWktBuwJ50Len65goiejjB GDqg== X-Forwarded-Encrypted: i=1; AJvYcCWHlwATo30mvpxA3WGhtEEKUKEqg8dodlVgS11ye6eRGJ7Yq0eNF0ddTyTu7qvMLR4QJt4VOgjU7g==@kvack.org X-Gm-Message-State: AOJu0YysuMJuzLiTNZVR1Ny4dyPEon10TzSQ7b+jNCbQonbimYhQwBWU Y94//SgBVT77yYqSrM9/LcGnp0lma5F6xmAXe0zcgreTXRfrkqE2 X-Gm-Gg: ASbGncsS72JjxsFfJfgbT4iEcOjlVXUv4u4fP3oYUcFeQ9Ms3Ah1KUnFCqRmYqQai8O Wm0EUKgp2B/hloFTi0SLUgahOCJF7xaKQMPV/MlfOXoZSRCZUOSN6zln/+xm0gcKcI2D8MumWiY p/s6O8W9JlpLlgqUSYrnr7Fe/nIEDZE2pIrsdMkG8x1fL4Fb8y8YBRyG5YkD0Xt/9fi7AQs7plG 1m2ajwxZVB/38Yzzv3jN6YXLtUfg9dbgb1s1J19uqZ8+vQ0PIL1kv2a14cE+klYWE/phg== X-Google-Smtp-Source: AGHT+IGl6aE5kXky5funQPPsyrxK3u5IW4Ixiegbwcy9K/RE1uERz2BkbNp8fNXWE8zBM39xrb41KA== X-Received: by 2002:a17:903:1109:b0:216:48f4:4f1a with SMTP id d9443c01a7336-21a83f4bfa8mr152077135ad.16.1736503055232; Fri, 10 Jan 2025 01:57:35 -0800 (PST) Received: from localhost.localdomain ([193.203.214.57]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-21a9f2178ddsm10767775ad.157.2025.01.10.01.57.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 10 Jan 2025 01:57:34 -0800 (PST) From: xu xin X-Google-Original-From: xu xin To: akpm@linux-foundation.org Cc: david@redhat.com, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, wang.yaxin@zte.com.cn, xu.xin16@zte.com.cn Subject: Re: [PATCH linux-next v4] ksm: add ksm involvement information for each process Date: Fri, 10 Jan 2025 09:57:30 +0000 Message-Id: <20250110095730.665478-1-xu.xin16@zte.com.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20241203165643.729e6c5fe58f59adc7ee098f@linux-foundation.org> References: <20241203165643.729e6c5fe58f59adc7ee098f@linux-foundation.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: gb8f3pjnf8r1opupwqyodu14sa6p9cnx X-Rspam-User: X-Rspamd-Queue-Id: 88D6F8000D X-Rspamd-Server: rspam08 X-HE-Tag: 1736503056-834956 X-HE-Meta: U2FsdGVkX1/J1t6ZqdPz/RA+5l0Fuap59+4e6PpRr/PSPIu4vb2k29GhgXnV4uwZs9RBiIMW1KCBdZf5zO3KIn2wLID4aekR5naY1ogyuLkn/autqQcK4uKPSzVsLuImdcDyRyXz5m7gYLhrxvNm+iRwTplUU8AcL8D6wo0kDEwzDKW/EvBpcwD0s6YvhnKY0B+LF1eVQR5v7JgyS+QU0oib52BovkrruGFRz/8AfpzUco8ugaiypW0o7wS1X0H5fqv2ekR8H+0DNG10Iir3rcBzzDuo3UpY7zdMg9l2O7zZx5iHyzxGMlo9gDYobe4D95MjPE8C4HYA5Fp75opdzJGSV/j58qM1/39iJ4ngvt3z11NZApv5BqK+h4XKbZJHWlIRWiUB6mLjd7uGC3X6OFikXtvrx8kpPrNXUB/hmWGyN0aKUYZWM3zmIdI85r4n2xKto0qHA9QWG0+z3SH89eoICMffsDB+PPk8qBgESvBWG/SFIWfXJxxHMC/BgWrhVSOQaDpiAC4bHGsmpyAVOr1bQkiF5A3B7Xmh5e6Oa1w5vm1mbqe4rT512Pm5pdQ1i7VcXqJVnqOZi0yqWMuvfQk/LecTQcypC6OR5nWiORq/C5s9pi+AydVA9acjxvqrJrXC1i7S5ddFNmblZtvKySxP2PSK9wnQXHvqHFtBqh64LfELdBTitfSongtYGYNGewuQ0nda7c6ra2PERaDfblHPDTdBld5UmvVlfoOVY6/aoq8cL1i3fHH+U7NUeiAOPVeWKWUYWl3aPex1Gkm89UTM87qDDDngV/+2hSVwcwqBmnvoLggupL6g7QIvTJWHeRXF9S9U8JL9R7w9RTYe6XlWPJiPmcdEvs2Hziuq/oE2DTQSE71dEUHTDSKzHUz0DuKh35Mv/XFcrucTayaKaxChQS7BZSgdQMu0E3DuQJjVo8LVd1xQeYQOllcLjvKUBDbsSKLd2vVBpEf6/+/ sRWqHeCm BoWA91Cy1m9iYBZjzu2yRs32Wcbxcx1RJnsMraB25hPgYmA/n/gWQHg2j3iXoN9ZbGQ5uvTG3BxyPJaakewCFqeSAFVo0HK5PxB6KAQeo1cTySDa03gXUE2A1SnJTCZ0rXiG2cdDjy4PQwoIMt+wFeAdcnwB9OZd4wZfX/vK+TYLiPzQQS/b4Fte4jcMzgAdDvLkxwPbfPWfQeSXVjiO6hxET1Yh76tKHHcnP7HBpEfuD7QRRZjaIzdQc6mDbO40tHnUTumuybLd1+kMLQ4UDDUJ3dgv5BrrOtwJIM3q5la/8qvp5lHO1unewLtvmXAHmo6w4s/V9JC2A7A4DfKPa20bzYkPKciGO+ePsSKn+a+F5IizkNzRZfpYEbaWJilmhtmkvAIEt4PuuBTpy/e6yQapnLQ== 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: >> From: xu xin >> >> In /proc//ksm_stat, Add two extra ksm involvement items including >> KSM_mergeable and KSM_merge_any. It helps administrators to >> better know the system's KSM behavior at process level. > >It's hard for me to judge the usefulness of this. Please tell us more: >usage examples, what actions have been taken using this information, etc. Thank you. They are just simply to improve the observability of KSM at process level, so that users can know if a certain process has enable KSM. For example, if without these two items, when we look at /proc//ksm_stat and there's no merging pages found, We are not sure whether it is because KSM was not enabled or because KSM did not successfully merge any pages. > >> KSM_mergeable: yes/no >> whether any VMAs of the process'mm are currently applicable to KSM. > >Could we simply display VM_MERGEABLE in /proc//maps? Althrough "mg" in /proc//smaps indicate VM_MERGEABLE, it's opaque and not very obvious for non professionals. >> >> fs/proc/base.c | 11 +++++++++++ >> include/linux/ksm.h | 1 + >> mm/ksm.c | 19 +++++++++++++++++++ > >Documentation/admin-guide/mm/ksm.rst will require an update please. Yes, okay. Thank you. >> --- a/fs/proc/base.c >> +++ b/fs/proc/base.c >> @@ -3269,6 +3269,7 @@ static int proc_pid_ksm_stat(struct seq_file *m, struct pid_namespace *ns, >> struct pid *pid, struct task_struct *task) >> { >> struct mm_struct *mm; >> + int ret = 0; >> >> mm = get_task_mm(task); >> if (mm) { >> @@ -3276,6 +3277,16 @@ static int proc_pid_ksm_stat(struct seq_file *m, struct pid_namespace *ns, >> seq_printf(m, "ksm_zero_pages %ld\n", mm_ksm_zero_pages(mm)); >> seq_printf(m, "ksm_merging_pages %lu\n", mm->ksm_merging_pages); >> seq_printf(m, "ksm_process_profit %ld\n", ksm_process_profit(mm)); >> + seq_printf(m, "ksm_merge_any: %s\n", >> + test_bit(MMF_VM_MERGE_ANY, &mm->flags) ? "yes" : "no"); >> + ret = mmap_read_lock_killable(mm); > >Could do the locking in ksm_process_mergeable()? Well, the reason why it's not placed inside is to prevent future deadlocks caused by someone using this function incorrectly under lock already held. Thanks.