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 EE3B9C47422 for ; Mon, 29 Jan 2024 12:13:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8339C6B007B; Mon, 29 Jan 2024 07:13:26 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7E3566B007D; Mon, 29 Jan 2024 07:13:26 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6AB8E6B007E; Mon, 29 Jan 2024 07:13:26 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 57F856B007B for ; Mon, 29 Jan 2024 07:13:26 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 1E4E71409E8 for ; Mon, 29 Jan 2024 12:13:26 +0000 (UTC) X-FDA: 81732238812.05.46B7838 Received: from mail-pl1-f171.google.com (mail-pl1-f171.google.com [209.85.214.171]) by imf21.hostedemail.com (Postfix) with ESMTP id 4269A1C001C for ; Mon, 29 Jan 2024 12:13:24 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=jItsRFkJ; spf=pass (imf21.hostedemail.com: domain of cuiyangpei@gmail.com designates 209.85.214.171 as permitted sender) smtp.mailfrom=cuiyangpei@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1706530404; a=rsa-sha256; cv=none; b=313isUoX3i3HEoW/ixeIlPSpuPR1CLa1hdmxcisSU2zzmWnrz0mYcA2AS6blVVsecPKJNQ 8DGyDh9fWR1oZNdDmRvvGYbD8eDxFPKGrvGTuAME8uvVqGF7I0CUE9XqedlFmcR321asUJ 9fpGV1efc+Z2Y8s2PIrifn8nMnlwWPs= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=jItsRFkJ; spf=pass (imf21.hostedemail.com: domain of cuiyangpei@gmail.com designates 209.85.214.171 as permitted sender) smtp.mailfrom=cuiyangpei@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=1706530404; 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=hoaRRVJZbpwuRBmsx74Q+sew1YTbfPVtekdObdLjHlE=; b=04yZRWHbm8Uki8xKFS0b6wH24ECg/rI7bRvhAIy6g2YOxmMj5ULT57qMeV9rbcb5OFzHOQ G2ZLYCUi4YhL2KvTlJPS68lZNKfNsGY4br+9U/UpOQuDdh9QaKcnGTta/JJU3CvR2PJXHF VzZLbhzyHeyA7Csx1L0i3CBcXMgBjwE= Received: by mail-pl1-f171.google.com with SMTP id d9443c01a7336-1d8cea8bb3bso3421395ad.2 for ; Mon, 29 Jan 2024 04:13:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706530403; x=1707135203; darn=kvack.org; h=user-agent: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=hoaRRVJZbpwuRBmsx74Q+sew1YTbfPVtekdObdLjHlE=; b=jItsRFkJavXJoI+k3pmS5H0NS2Z0LRharCEijDr0SEB9eVBqvCZLIbe1npK5QEmYKO CXmWA1Yewcqa91HttwJMNZqx+P4sbqnZY7UrNl4kDtaJEMy+WvmSn/Sm4InHQrdxiCD4 w1Jw/oo/uTjWKbSSdokxizER2w6JDzhs/BjjFTts9xxCXWr8id3gQrVYdREyUmXU2KK9 /8lOeMewl41cNmELwYFYyrpQwU00V8A8RnXUUwDnibgWYP5g0swDAGZ7x6HjgDfJNvL8 RXG60bCSbKW1McecTQ0GFMvxLDfGRDZxlmXEeTf94H/3xyTAxYPyHvdkVKgMsBpoVDre /9eg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706530403; x=1707135203; h=user-agent: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=hoaRRVJZbpwuRBmsx74Q+sew1YTbfPVtekdObdLjHlE=; b=rOM+h0GTRsa/1qsGN5s+xBhXMWx3LaLp1wZFYkEA6yHs0gBp07ljEY34aVKWheTmBH q5Qzwi3ZEICt2NxwGqXebjyS4HwHJivlitkHIXgdmy+eFbp0szzJBnuE0OMRy6EMR8xU QhGPmD+J3nHNYx7GDx/DrgQDrDBkX4VDi1OZsKvhyiXM5X31it32/gAbH3U1iP+FrZM7 5xM25Rf1kHWeLhIT4B23XUYgDqFdnbcSfHcKopLNWxf44ZKoNm9XWazlVdQ0FNGCsmqm nSuzCrrEuEBV4fBCN+//i/XbYPGxkKb8HaSp2vfdCebRMWplPlIMYj00TpiDnE+/UIpX hl6Q== X-Gm-Message-State: AOJu0YwTmo0BAswV8CmMH4Tne0wNQhlQe7oS7RAFyGluXnVz/GQ/3E7N OdmsfEfzkRq7Zw90231gdOdXtnMGMPSoMVa8riW+M8rS4+lVGmML X-Google-Smtp-Source: AGHT+IGe75wXRfHfhKAZFoV1YLgi2pirWtWkd84BfMTXVJ46oMR/sFEsWExHX0KeLGpQuF/FiHFUMA== X-Received: by 2002:a17:902:6804:b0:1d4:e04b:4742 with SMTP id h4-20020a170902680400b001d4e04b4742mr2117030plk.58.1706530403008; Mon, 29 Jan 2024 04:13:23 -0800 (PST) Received: from cuiyangpei ([43.224.245.227]) by smtp.gmail.com with ESMTPSA id s10-20020a170902ea0a00b001d714a1530bsm5242067plg.176.2024.01.29.04.13.20 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 29 Jan 2024 04:13:22 -0800 (PST) Date: Mon, 29 Jan 2024 20:13:16 +0800 From: cuiyangpei To: SeongJae Park Cc: akpm@linux-foundation.org, damon@lists.linux.dev, linux-mm@kvack.org, linux-kernel@vger.kernel.org, xiongping1@xiaomi.com Subject: Re: [PATCH 1/2] mm/damon/sysfs: Implement recording feature Message-ID: <20240129121316.GA9706@cuiyangpei> References: <20240128162804.17866-1-sj@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240128162804.17866-1-sj@kernel.org> User-Agent: Mutt/1.9.4 (2018-02-28) X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 4269A1C001C X-Stat-Signature: k53983su8o7zac8zy486zcenin8w8bfj X-Rspam-User: X-HE-Tag: 1706530404-498770 X-HE-Meta: U2FsdGVkX18ZTCU0aSXAMhvzwGCJEtgPmAsWz3H814tACQqKV2MCNbPC4qiR7veb6AVauXperHhc3rT1x8Y2rWLHZsFtKi+F/opW9dpdsYE7B3FgRVUvKKBYmQgma6M0F3nHu7mqZYFmmlpdqn5Ngf1kUBbldYc9un3f04dj4sDLb9giQ22vm38fakXoqEh184shigkt+G3g/jxT0aXaj0pAmEjxsx9XiOmZJrwqxH8d4L5H4y2+RW/GWLgMEuzr+C/1jXof2W1Mq+dcENjoiofRNXq7iAbixMnwDaMrPol1FOfIS7aVc34z6sxFKV0vvqoaxVSgdpkJ7lvIX3qZ6JQyGFzl81SEBn0miJj19uENwErn+fQpYMSqg2hLs/e0PcBGQucxPFze9zdNnShAS5igxFoldaAFQCK88AIiNoAlgu0TiKC1zoM6Cl5YfXlQoB4lzZ48QFebMGTme+HlbpPjnCFVPGpQxmqRGwLVHcMh4Eg0P0bXvBdn8L/xyWj36vUWfT35Bgz0CJyHFi/XmlNvc/LowIJYKkD9jxFezRfcuPh1catGkrfRSheaAtmTdRsEvhnxfeK6gSc73Pe4oDhzAyEIfbpIcScUSBrBCQILz5Fsrj9O3RiSRp5D7NyQxy3ygCvopKqDSdN4J2+R/e34i2KZdRj0reHpaTmI5KmR27Jvx42VFNQuuXZp6dellwbkqv5V9r7DOICB/VVwvAUwl9g9zAfUv0pZIC861T2ldlXABuB0/Leo3bHAvQ/dqyI+KkqCQcEce1BZAsByWc4DZVcXVeFDrOF+/JvpZZ2tQ8V0NyVbBMneZ/ohtWXgeLP57tJ/CSKeRZnWDUM5RvwJ3ny9+9K8aghKQ60wHdH4fz9qFyzcYxuu4L1TLABpM9QycXcah1FakBdXI6AZ0GAm9o8RbQt1VwOu1KIkSvI05UZ+eJWZLXp2siNqtIGz0q3FNxNCmzDmWdOxgBr 15/VqH95 H+fn3rblTnvqIknk5VGVD3BmtzlP5dFPgshdB2oI0MRXKcFbelm8wKdlQk/K/noaJDMcmu5QJuF+XulCPb9IIDk2NculUPB5LJx2sqTxNZwrf/VPWqRHlzR8OnzFLeSwRq7cPKAkxzKO4J4z+cBIy6RQIGXjT0zjreX/4CaldPoBPm3VohMm+A9olnPGkMFs+G+1IXqWe02u4pvk8uSUyF5KkHKRtf7f/+qNZ0XKeP+a1GOrGVMH6d2NVF2weSQ7xUAq0gDAm46R7MUMac6KLrFcYWXYXN10S4O6c6IepCPvDYUuYoqq2hLas34KcM1mDo/zDLruGo4AQaz/CqGx3RKWzEGHnKEu6ganMwvubYz2mdJk7RM4+PV8s8elWGva1djFyRPnEG9gjXpJeZ3BW3EL8Eue0u94Pl9WDxuwBfcVp8aq9oqV2mK9AvzWQYBXcmYf+qkmgUNDFUOY= X-Bogosity: Ham, tests=bogofilter, spamicity=0.051886, 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 Sun, Jan 28, 2024 at 08:28:04AM -0800, SeongJae Park wrote: > On Sun, 28 Jan 2024 17:13:00 +0800 cuiyangpei wrote: > > > On Fri, Jan 26, 2024 at 12:04:54AM -0800, SeongJae Park wrote: > [...] > > > So, 'update_schemes_tried_regions' command is firstly handled by > > > 'damon_sysfs_cmd_request_callback()', which is registered as > > > after_wmarks_check() and after_aggregation() callback. Hence > > > 'update_schemes_tried_regions' command is still effectively working in > > > aggregation interval granularity. I think this is what you found, right? > > > > > Yes. > > > If I'm not wrongly understanding your point, I think the concern is valid. I > > > think we should make it works in sampling interval granularity. I will try to > > > make so. Would that work for your use case? > > > > > It's much better than working in aggregation interval. > > Thank you for confirming. I will start working on this. > Great, looking forward to seeing the progress. > > > > I have a question. Why does the 'update_schemes_tried_regions' command need to work > > in the sampling time or aggregation time? 'update_schemes_tried_regions' is a > > relatively special state that updates the regions that corresponding operation scheme. > > Can it be separated from other states and controlled by sysfs node to respond immediately > > after being written? > > Mainly because the region data is updated by a kdamond thread. To safely > access the region, the accessor should do some kind of synchronization with the > kdamond thread. To minimize such synchronization overhead, DAMON let the API > users (kernel components) to register callbacks which kdamond invokes under > specific events including 'after_sampling' or 'after_aggregate'. Because the > callback is executed in the kdamond thread, callbacks can safely access the > data without additional synchronization. DAMON sysfs interface is using the > callback mechanism, and hence need to work in the sampling or aggregation > times. > Thank you for the detailed explanation. > Thanks, > SJ > > [...]