From: SeongJae Park <sj@kernel.org>
To: Usama Arif <usamaarif642@gmail.com>
Cc: SeongJae Park <sj@kernel.org>,
akpm@linux-foundation.org, damon@lists.linux.dev,
linux-mm@kvack.org, hannes@cmpxchg.org, david@redhat.com,
kernel-team@meta.com
Subject: Re: [PATCH v4 3/6] mm/damon/sysfs-schemes: add files for setting damos_filter->folio_size
Date: Wed, 5 Feb 2025 13:44:22 -0800 [thread overview]
Message-ID: <20250205214422.60201-1-sj@kernel.org> (raw)
In-Reply-To: <591085b2-4566-429e-9ee4-991be41062f7@gmail.com>
On Wed, 5 Feb 2025 13:57:05 +0000 Usama Arif <usamaarif642@gmail.com> wrote:
>
>
> On 04/02/2025 23:10, SeongJae Park wrote:
> > On Mon, 3 Feb 2025 22:55:30 +0000 Usama Arif <usamaarif642@gmail.com> wrote:
> >
> >> Add min and max files for damon filters to let the userspace decide
> >> the min/max folio size to operate on. This will be needed to decide
> >> what folio sizes to give pa_stat for.
> >
> > I'd prefer implementing the logic with API interface first, and then
> > implementing sysfs interface on top of the API.
> >
> >>
> >> Signed-off-by: Usama Arif <usamaarif642@gmail.com>
> >> ---
[...]
> >> @@ -1953,6 +1999,13 @@ static int damon_sysfs_add_scheme_filters(struct damos *scheme,
> >> filter->addr_range = sysfs_filter->addr_range;
> >> } else if (filter->type == DAMOS_FILTER_TYPE_TARGET) {
> >> filter->target_idx = sysfs_filter->target_idx;
> >> + } else if (filter->type == DAMOS_FILTER_TYPE_HUGEPAGE) {
> >> + if (sysfs_filter->folio_size.min >
> >> + sysfs_filter->folio_size.max) {
> >> + damos_destroy_filter(filter);
> >> + return -EINVAL;
> >> + }
> >
> > I don't think letting users set invalid min/max is a real problem, as long as
> > the implementation will handle the case (no memory matches the filter). Let's
> > just allow it, like addr_range case. If we really need to disallow this, it
> > would better to do that from damos_commit_filter() like central point.
> >
>
> hmm, does addr_range allow it? it addr_range.end < addr_range.start it returns an error.
> I did it in a similar fashion for hugepage filter if min > max it returns an error.
Oh you're right... Maybe I was just out of mind, sorry. Please keep this part
as is your version to be consistent with the address range code.
Thanks,
SJ
>
>
> Full code of damon_sysfs_add_scheme_filters below:
>
> } else if (filter->type == DAMOS_FILTER_TYPE_ADDR) {
> if (sysfs_filter->addr_range.end <
> sysfs_filter->addr_range.start) {
> damos_destroy_filter(filter);
> return -EINVAL;
> }
> filter->addr_range = sysfs_filter->addr_range;
> } else if (filter->type == DAMOS_FILTER_TYPE_TARGET) {
> filter->target_idx = sysfs_filter->target_idx;
> } else if (filter->type == DAMOS_FILTER_TYPE_HUGEPAGE) {
> if (sysfs_filter->folio_size.min >
> sysfs_filter->folio_size.max) {
> damos_destroy_filter(filter);
> return -EINVAL;
> }
> filter->folio_size = sysfs_filter->folio_size;
> }
>
>
>
> >> + filter->folio_size = sysfs_filter->folio_size;
> >> }
> >>
> >> damos_add_filter(scheme, filter);
> >> --
> >> 2.43.5
> >
> >
> > Thanks,
> > SJ
next prev parent reply other threads:[~2025-02-05 21:44 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-03 22:55 [PATCH v4 0/6] mm/damon: add support for hugepages Usama Arif
2025-02-03 22:55 ` [PATCH v4 1/6] mm/damon: have damon_get_folio return folio even for tail pages Usama Arif
2025-02-03 22:55 ` [PATCH v4 2/6] mm/damon/paddr: use damon_get_folio_in_region to obtain folio Usama Arif
2025-02-04 23:06 ` SeongJae Park
2025-02-05 12:46 ` Usama Arif
2025-02-05 21:40 ` SeongJae Park
2025-02-03 22:55 ` [PATCH v4 3/6] mm/damon/sysfs-schemes: add files for setting damos_filter->folio_size Usama Arif
2025-02-04 23:10 ` SeongJae Park
2025-02-05 13:57 ` Usama Arif
2025-02-05 21:44 ` SeongJae Park [this message]
2025-02-03 22:55 ` [PATCH v4 4/6] mm/damon: introduce DAMOS filter type hugepage Usama Arif
2025-02-04 17:27 ` kernel test robot
2025-02-04 23:12 ` SeongJae Park
2025-02-05 13:52 ` Usama Arif
2025-02-05 22:05 ` SeongJae Park
2025-02-07 18:22 ` Usama Arif
2025-02-07 18:52 ` SeongJae Park
2025-02-03 22:55 ` [PATCH v4 5/6] Docs/ABI/damon: document DAMOS sysfs files to set the min/max folio_size Usama Arif
2025-02-04 23:13 ` SeongJae Park
2025-02-03 22:55 ` [PATCH v4 6/6] Docs/admin-guide/mm/damon/usage: Document hugepage filter type Usama Arif
2025-02-04 23:13 ` SeongJae Park
2025-02-04 23:20 ` [PATCH v4 0/6] mm/damon: add support for hugepages SeongJae Park
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250205214422.60201-1-sj@kernel.org \
--to=sj@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=damon@lists.linux.dev \
--cc=david@redhat.com \
--cc=hannes@cmpxchg.org \
--cc=kernel-team@meta.com \
--cc=linux-mm@kvack.org \
--cc=usamaarif642@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.