damon.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* (no subject)
@ 2023-02-09 19:20 SeongJae Park
  2023-02-09 19:20 ` [PATCH 1/3] Docs/admin-guide/mm/damon/usage: add DAMON debugfs interface deprecation notice SeongJae Park
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: SeongJae Park @ 2023-02-09 19:20 UTC (permalink / raw)
  To: Andrew Morton
  Cc: SeongJae Park, Jonathan Corbet, damon, linux-mm, linux-doc, linux-kernel

Date: Thu, 9 Feb 2023 19:16:23 +0000
Subject: [PATCH 0/3] mm/damon: deprecate DAMON debugfs interface

DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
kernel is released.  And, v6.1.y has announced to be an LTS[1].

Though the announcement was there for a while, some people might not
noticed that so far.  Also, some users could depend on it and have
problems at  movng to the alternative (DAMON sysfs interface).

For such cases, keep the code and documents with warning messages and
contacts to ask helps for the deprecation.

[1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c

SeongJae Park (3):
  Docs/admin-guide/mm/damon/usage: add DAMON debugfs interface
    deprecation notice
  mm/damon/Kconfig: add DAMON debugfs interface deprecation notice
  mm/damon/dbgfs: print DAMON debugfs interface deprecation message

 Documentation/admin-guide/mm/damon/usage.rst | 20 +++++++++++++-------
 mm/damon/Kconfig                             |  7 ++++---
 mm/damon/dbgfs.c                             | 16 ++++++++++++++++
 3 files changed, 33 insertions(+), 10 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/3] Docs/admin-guide/mm/damon/usage: add DAMON debugfs interface deprecation notice
  2023-02-09 19:20 SeongJae Park
@ 2023-02-09 19:20 ` SeongJae Park
  2023-02-09 19:20 ` [PATCH 2/3] mm/damon/Kconfig: " SeongJae Park
  2023-02-09 19:20 ` [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message SeongJae Park
  2 siblings, 0 replies; 8+ messages in thread
From: SeongJae Park @ 2023-02-09 19:20 UTC (permalink / raw)
  To: Andrew Morton
  Cc: SeongJae Park, Jonathan Corbet, damon, linux-mm, linux-doc, linux-kernel

DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
kernel is released.  And, v6.1.y has announced to be an LTS[1].

Though the announcement was there for a while, some people might not
noticed that so far.  Also, some users could depend on it and have
problems at  movng to the alternative (DAMON sysfs interface).

For such cases, note DAMON debugfs interface as deprecated, and contacts
to ask helps on the document.

[1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c

Signed-off-by: SeongJae Park <sj@kernel.org>
---
 Documentation/admin-guide/mm/damon/usage.rst | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/Documentation/admin-guide/mm/damon/usage.rst b/Documentation/admin-guide/mm/damon/usage.rst
index 9237d6a25897..9b823fec974d 100644
--- a/Documentation/admin-guide/mm/damon/usage.rst
+++ b/Documentation/admin-guide/mm/damon/usage.rst
@@ -25,10 +25,12 @@ DAMON provides below interfaces for different users.
   interface provides only simple :ref:`statistics <damos_stats>` for the
   monitoring results.  For detailed monitoring results, DAMON provides a
   :ref:`tracepoint <tracepoint>`.
-- *debugfs interface.*
+- *debugfs interface. (DEPRECATED!)*
   :ref:`This <debugfs_interface>` is almost identical to :ref:`sysfs interface
-  <sysfs_interface>`.  This will be removed after next LTS kernel is released,
-  so users should move to the :ref:`sysfs interface <sysfs_interface>`.
+  <sysfs_interface>`.  This is deprecated, so users should move to the
+  :ref:`sysfs interface <sysfs_interface>`.  If you depend on this and cannot
+  move, please report your usecase to damon@lists.linux.dev and
+  linux-mm@kvack.org.
 - *Kernel Space Programming Interface.*
   :doc:`This </mm/damon/api>` is for kernel space programmers.  Using this,
   users can utilize every feature of DAMON most flexibly and efficiently by
@@ -487,13 +489,17 @@ the files as above.  Above is only for an example.
 
 .. _debugfs_interface:
 
-debugfs Interface
-=================
+debugfs Interface (DEPRECATED!)
+===============================
 
 .. note::
 
-  DAMON debugfs interface will be removed after next LTS kernel is released, so
-  users should move to the :ref:`sysfs interface <sysfs_interface>`.
+  THIS IS DEPRECATED!
+
+  DAMON debugfs interface is deprecated, so users should move to the
+  :ref:`sysfs interface <sysfs_interface>`.  If you depend on this and cannot
+  move, please report your usecase to damon@lists.linux.dev and
+  linux-mm@kvack.org.
 
 DAMON exports eight files, ``attrs``, ``target_ids``, ``init_regions``,
 ``schemes``, ``monitor_on``, ``kdamond_pid``, ``mk_contexts`` and
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/3] mm/damon/Kconfig: add DAMON debugfs interface deprecation notice
  2023-02-09 19:20 SeongJae Park
  2023-02-09 19:20 ` [PATCH 1/3] Docs/admin-guide/mm/damon/usage: add DAMON debugfs interface deprecation notice SeongJae Park
@ 2023-02-09 19:20 ` SeongJae Park
  2023-02-09 19:20 ` [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message SeongJae Park
  2 siblings, 0 replies; 8+ messages in thread
From: SeongJae Park @ 2023-02-09 19:20 UTC (permalink / raw)
  To: Andrew Morton; +Cc: SeongJae Park, damon, linux-mm, linux-kernel

DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
kernel is released.  And, v6.1.y has announced to be an LTS[1].

Though the announcement was there for a while, some people might not
noticed that so far.  Also, some users could depend on it and have
problems at  movng to the alternative (DAMON sysfs interface).

For such cases, note DAMON debugfs interface as deprecated, and contacts
to ask helps on the Kconfig.

[1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c

Signed-off-by: SeongJae Park <sj@kernel.org>
---
 mm/damon/Kconfig | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/mm/damon/Kconfig b/mm/damon/Kconfig
index 7821fcb3f258..436c6b4cb5ec 100644
--- a/mm/damon/Kconfig
+++ b/mm/damon/Kconfig
@@ -60,7 +60,7 @@ config DAMON_SYSFS
 	  the interface for arbitrary data access monitoring.
 
 config DAMON_DBGFS
-	bool "DAMON debugfs interface"
+	bool "DAMON debugfs interface (DEPRECATED!)"
 	depends on DAMON_VADDR && DAMON_PADDR && DEBUG_FS
 	help
 	  This builds the debugfs interface for DAMON.  The user space admins
@@ -68,8 +68,9 @@ config DAMON_DBGFS
 
 	  If unsure, say N.
 
-	  This will be removed after >5.15.y LTS kernel is released, so users
-	  should move to the sysfs interface (DAMON_SYSFS).
+	  This is deprecated, so users should move to the sysfs interface
+	  (DAMON_SYSFS).  If you depend on this and cannot move, please report
+	  your usecase to damon@lists.linux.dev and linux-mm@kvack.org.
 
 config DAMON_DBGFS_KUNIT_TEST
 	bool "Test for damon debugfs interface" if !KUNIT_ALL_TESTS
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message
  2023-02-09 19:20 SeongJae Park
  2023-02-09 19:20 ` [PATCH 1/3] Docs/admin-guide/mm/damon/usage: add DAMON debugfs interface deprecation notice SeongJae Park
  2023-02-09 19:20 ` [PATCH 2/3] mm/damon/Kconfig: " SeongJae Park
@ 2023-02-09 19:20 ` SeongJae Park
  2023-02-10  3:26   ` Randy Dunlap
  2 siblings, 1 reply; 8+ messages in thread
From: SeongJae Park @ 2023-02-09 19:20 UTC (permalink / raw)
  To: Andrew Morton; +Cc: SeongJae Park, damon, linux-mm, linux-kernel

DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
kernel is released.  And, v6.1.y has announced to be an LTS[1].

Though the announcement was there for a while, some people might not
noticed that so far.  Also, some users could depend on it and have
problems at  movng to the alternative (DAMON sysfs interface).

For such cases, warn DAMON debugfs interface deprecation with contacts
to ask helps when any DAMON debugfs interface file is opened.

[1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c

Signed-off-by: SeongJae Park <sj@kernel.org>
---
 mm/damon/dbgfs.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/mm/damon/dbgfs.c b/mm/damon/dbgfs.c
index b3f454a5c682..e551a20b35e3 100644
--- a/mm/damon/dbgfs.c
+++ b/mm/damon/dbgfs.c
@@ -20,6 +20,11 @@ static int dbgfs_nr_ctxs;
 static struct dentry **dbgfs_dirs;
 static DEFINE_MUTEX(damon_dbgfs_lock);
 
+static void damon_dbgfs_warn_deprecation(void)
+{
+	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).  If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
+}
+
 /*
  * Returns non-empty string on success, negative error code otherwise.
  */
@@ -711,6 +716,8 @@ static ssize_t dbgfs_kdamond_pid_read(struct file *file,
 
 static int damon_dbgfs_open(struct inode *inode, struct file *file)
 {
+	damon_dbgfs_warn_deprecation();
+
 	file->private_data = inode->i_private;
 
 	return nonseekable_open(inode, file);
@@ -1039,15 +1046,24 @@ static ssize_t dbgfs_monitor_on_write(struct file *file,
 	return ret;
 }
 
+static int damon_dbgfs_static_file_open(struct inode *inode, struct file *file)
+{
+	damon_dbgfs_warn_deprecation();
+	return nonseekable_open(inode, file);
+}
+
 static const struct file_operations mk_contexts_fops = {
+	.open = damon_dbgfs_static_file_open,
 	.write = dbgfs_mk_context_write,
 };
 
 static const struct file_operations rm_contexts_fops = {
+	.open = damon_dbgfs_static_file_open,
 	.write = dbgfs_rm_context_write,
 };
 
 static const struct file_operations monitor_on_fops = {
+	.open = damon_dbgfs_static_file_open,
 	.read = dbgfs_monitor_on_read,
 	.write = dbgfs_monitor_on_write,
 };
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message
  2023-02-09 19:20 ` [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message SeongJae Park
@ 2023-02-10  3:26   ` Randy Dunlap
  2023-02-10  4:24     ` SeongJae Park
  0 siblings, 1 reply; 8+ messages in thread
From: Randy Dunlap @ 2023-02-10  3:26 UTC (permalink / raw)
  To: SeongJae Park, Andrew Morton; +Cc: damon, linux-mm, linux-kernel

Hi,

On 2/9/23 11:20, SeongJae Park wrote:
> DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
> kernel is released.  And, v6.1.y has announced to be an LTS[1].
> 
> Though the announcement was there for a while, some people might not
> noticed that so far.  Also, some users could depend on it and have
> problems at  movng to the alternative (DAMON sysfs interface).
> 
> For such cases, warn DAMON debugfs interface deprecation with contacts
> to ask helps when any DAMON debugfs interface file is opened.
> 
> [1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c
> 
> Signed-off-by: SeongJae Park <sj@kernel.org>
> ---
>  mm/damon/dbgfs.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/mm/damon/dbgfs.c b/mm/damon/dbgfs.c
> index b3f454a5c682..e551a20b35e3 100644
> --- a/mm/damon/dbgfs.c
> +++ b/mm/damon/dbgfs.c
> @@ -20,6 +20,11 @@ static int dbgfs_nr_ctxs;
>  static struct dentry **dbgfs_dirs;
>  static DEFINE_MUTEX(damon_dbgfs_lock);
>  
> +static void damon_dbgfs_warn_deprecation(void)
> +{
> +	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).  If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
> +}

Line length of 234 is a bit over the limit.
I think it would be OK to split it at the end of the first sentence, like:

	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
	pr_warn_once("If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");

or would that [2 pr_warn_once() calls] not work for some reason?

Or even:

	pr_warn_once(
"DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
	pr_warn_once(
"If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");

although some people might gag at that one.


-- 
~Randy

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message
  2023-02-10  3:26   ` Randy Dunlap
@ 2023-02-10  4:24     ` SeongJae Park
  2023-02-10  4:32       ` Randy Dunlap
  0 siblings, 1 reply; 8+ messages in thread
From: SeongJae Park @ 2023-02-10  4:24 UTC (permalink / raw)
  To: Randy Dunlap; +Cc: SeongJae Park, Andrew Morton, damon, linux-mm, linux-kernel

Hi Randy,

On Thu, 9 Feb 2023 19:26:43 -0800 Randy Dunlap <rdunlap@infradead.org> wrote:

> Hi,
> 
> On 2/9/23 11:20, SeongJae Park wrote:
> > DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
> > kernel is released.  And, v6.1.y has announced to be an LTS[1].
> > 
> > Though the announcement was there for a while, some people might not
> > noticed that so far.  Also, some users could depend on it and have
> > problems at  movng to the alternative (DAMON sysfs interface).
> > 
> > For such cases, warn DAMON debugfs interface deprecation with contacts
> > to ask helps when any DAMON debugfs interface file is opened.
> > 
> > [1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c
> > 
> > Signed-off-by: SeongJae Park <sj@kernel.org>
> > ---
> >  mm/damon/dbgfs.c | 16 ++++++++++++++++
> >  1 file changed, 16 insertions(+)
> > 
> > diff --git a/mm/damon/dbgfs.c b/mm/damon/dbgfs.c
> > index b3f454a5c682..e551a20b35e3 100644
> > --- a/mm/damon/dbgfs.c
> > +++ b/mm/damon/dbgfs.c
> > @@ -20,6 +20,11 @@ static int dbgfs_nr_ctxs;
> >  static struct dentry **dbgfs_dirs;
> >  static DEFINE_MUTEX(damon_dbgfs_lock);
> >  
> > +static void damon_dbgfs_warn_deprecation(void)
> > +{
> > +	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).  If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
> > +}
> 
> Line length of 234 is a bit over the limit.
> I think it would be OK to split it at the end of the first sentence, like:
> 
> 	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
> 	pr_warn_once("If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
> 
> or would that [2 pr_warn_once() calls] not work for some reason?
> 
> Or even:
> 
> 	pr_warn_once(
> "DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
> 	pr_warn_once(
> "If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
> 
> although some people might gag at that one.

Thank you for your opinion.

I considered that, but I was worrying if some other messages come between those
two separated messages.

What do you think about breaking the string like below?  I first tried to do so
like memcg hierarchy[1], but ended up to this version because of checkpatch.pl
outputs[2].  However, if others doesn't care, I think this is ok.

	pr_warn_once("DAMON debugfs interface is deprecated, "
		     "so users should move DAMON_SYSFS. If you depend on this "
		     "and cannot move, please report your usecase to "
		     "damon@lists.linux.dev and linux-mm@kvack.org.\n");

If breaking user-visible string is not ok, maybe we could make it as short as
your above example.

 	pr_warn_once("DAMON_DBGFS is deprecated; please contact to damon@lists.linux.dev and linux-mm@kvack.org if you depend on it.\n");

May I ask your opinion?

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/mm/memcontrol.c?h=v6.1#n3643
[2] https://docs.kernel.org/process/coding-style.html#breaking-long-lines-and-strings


Thanks,
SJ

> 
> 
> -- 
> ~Randy

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message
  2023-02-10  4:24     ` SeongJae Park
@ 2023-02-10  4:32       ` Randy Dunlap
  2023-02-10  4:35         ` SeongJae Park
  0 siblings, 1 reply; 8+ messages in thread
From: Randy Dunlap @ 2023-02-10  4:32 UTC (permalink / raw)
  To: SeongJae Park; +Cc: Andrew Morton, damon, linux-mm, linux-kernel

Hi,

On 2/9/23 20:24, SeongJae Park wrote:
> Hi Randy,
> 
> On Thu, 9 Feb 2023 19:26:43 -0800 Randy Dunlap <rdunlap@infradead.org> wrote:
> 
>> Hi,
>>
>> On 2/9/23 11:20, SeongJae Park wrote:
>>> DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
>>> kernel is released.  And, v6.1.y has announced to be an LTS[1].
>>>
>>> Though the announcement was there for a while, some people might not
>>> noticed that so far.  Also, some users could depend on it and have
>>> problems at  movng to the alternative (DAMON sysfs interface).
>>>
>>> For such cases, warn DAMON debugfs interface deprecation with contacts
>>> to ask helps when any DAMON debugfs interface file is opened.
>>>
>>> [1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c
>>>
>>> Signed-off-by: SeongJae Park <sj@kernel.org>
>>> ---
>>>  mm/damon/dbgfs.c | 16 ++++++++++++++++
>>>  1 file changed, 16 insertions(+)
>>>
>>> diff --git a/mm/damon/dbgfs.c b/mm/damon/dbgfs.c
>>> index b3f454a5c682..e551a20b35e3 100644
>>> --- a/mm/damon/dbgfs.c
>>> +++ b/mm/damon/dbgfs.c
>>> @@ -20,6 +20,11 @@ static int dbgfs_nr_ctxs;
>>>  static struct dentry **dbgfs_dirs;
>>>  static DEFINE_MUTEX(damon_dbgfs_lock);
>>>  
>>> +static void damon_dbgfs_warn_deprecation(void)
>>> +{
>>> +	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).  If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
>>> +}
>>
>> Line length of 234 is a bit over the limit.
>> I think it would be OK to split it at the end of the first sentence, like:
>>
>> 	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
>> 	pr_warn_once("If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
>>
>> or would that [2 pr_warn_once() calls] not work for some reason?
>>
>> Or even:
>>
>> 	pr_warn_once(
>> "DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
>> 	pr_warn_once(
>> "If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
>>
>> although some people might gag at that one.
> 
> Thank you for your opinion.
> 
> I considered that, but I was worrying if some other messages come between those
> two separated messages.

I see.

> 
> What do you think about breaking the string like below?  I first tried to do so
> like memcg hierarchy[1], but ended up to this version because of checkpatch.pl
> outputs[2].  However, if others doesn't care, I think this is ok.

It's OK to ignore checkpatch sometimes. :)

> 
> 	pr_warn_once("DAMON debugfs interface is deprecated, "
> 		     "so users should move DAMON_SYSFS. If you depend on this "
> 		     "and cannot move, please report your usecase to "
> 		     "damon@lists.linux.dev and linux-mm@kvack.org.\n");
> 
> If breaking user-visible string is not ok, maybe we could make it as short as
> your above example.
> 
>  	pr_warn_once("DAMON_DBGFS is deprecated; please contact to damon@lists.linux.dev and linux-mm@kvack.org if you depend on it.\n");
> 
> May I ask your opinion?

I'm OK with either one of these, but I prefer your first example over the second one.

> [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/mm/memcontrol.c?h=v6.1#n3643
> [2] https://docs.kernel.org/process/coding-style.html#breaking-long-lines-and-strings

Thanks.
-- 
~Randy

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message
  2023-02-10  4:32       ` Randy Dunlap
@ 2023-02-10  4:35         ` SeongJae Park
  0 siblings, 0 replies; 8+ messages in thread
From: SeongJae Park @ 2023-02-10  4:35 UTC (permalink / raw)
  To: Randy Dunlap; +Cc: SeongJae Park, Andrew Morton, damon, linux-mm, linux-kernel

On Thu, 9 Feb 2023 20:32:21 -0800 Randy Dunlap <rdunlap@infradead.org> wrote:

> Hi,
> 
> On 2/9/23 20:24, SeongJae Park wrote:
> > Hi Randy,
> > 
> > On Thu, 9 Feb 2023 19:26:43 -0800 Randy Dunlap <rdunlap@infradead.org> wrote:
> > 
> >> Hi,
> >>
> >> On 2/9/23 11:20, SeongJae Park wrote:
> >>> DAMON debugfs interface has announced to be deprecated after >v5.15 LTS
> >>> kernel is released.  And, v6.1.y has announced to be an LTS[1].
> >>>
> >>> Though the announcement was there for a while, some people might not
> >>> noticed that so far.  Also, some users could depend on it and have
> >>> problems at  movng to the alternative (DAMON sysfs interface).
> >>>
> >>> For such cases, warn DAMON debugfs interface deprecation with contacts
> >>> to ask helps when any DAMON debugfs interface file is opened.
> >>>
> >>> [1] https://git.kernel.org/pub/scm/docs/kernel/website.git/commit/?id=332e9121320bc7461b2d3a79665caf153e51732c
> >>>
> >>> Signed-off-by: SeongJae Park <sj@kernel.org>
> >>> ---
> >>>  mm/damon/dbgfs.c | 16 ++++++++++++++++
> >>>  1 file changed, 16 insertions(+)
> >>>
> >>> diff --git a/mm/damon/dbgfs.c b/mm/damon/dbgfs.c
> >>> index b3f454a5c682..e551a20b35e3 100644
> >>> --- a/mm/damon/dbgfs.c
> >>> +++ b/mm/damon/dbgfs.c
> >>> @@ -20,6 +20,11 @@ static int dbgfs_nr_ctxs;
> >>>  static struct dentry **dbgfs_dirs;
> >>>  static DEFINE_MUTEX(damon_dbgfs_lock);
> >>>  
> >>> +static void damon_dbgfs_warn_deprecation(void)
> >>> +{
> >>> +	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).  If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
> >>> +}
> >>
> >> Line length of 234 is a bit over the limit.
> >> I think it would be OK to split it at the end of the first sentence, like:
> >>
> >> 	pr_warn_once("DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
> >> 	pr_warn_once("If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
> >>
> >> or would that [2 pr_warn_once() calls] not work for some reason?
> >>
> >> Or even:
> >>
> >> 	pr_warn_once(
> >> "DAMON debugfs interface is deprecated, so users should move to the sysfs interface (DAMON_SYSFS).\n");
> >> 	pr_warn_once(
> >> "If you depend on this and cannot move, please report your usecase to damon@lists.linux.dev and linux-mm@kvack.org.\n");
> >>
> >> although some people might gag at that one.
> > 
> > Thank you for your opinion.
> > 
> > I considered that, but I was worrying if some other messages come between those
> > two separated messages.
> 
> I see.
> 
> > 
> > What do you think about breaking the string like below?  I first tried to do so
> > like memcg hierarchy[1], but ended up to this version because of checkpatch.pl
> > outputs[2].  However, if others doesn't care, I think this is ok.
> 
> It's OK to ignore checkpatch sometimes. :)
> 
> > 
> > 	pr_warn_once("DAMON debugfs interface is deprecated, "
> > 		     "so users should move DAMON_SYSFS. If you depend on this "
> > 		     "and cannot move, please report your usecase to "
> > 		     "damon@lists.linux.dev and linux-mm@kvack.org.\n");
> > 
> > If breaking user-visible string is not ok, maybe we could make it as short as
> > your above example.
> > 
> >  	pr_warn_once("DAMON_DBGFS is deprecated; please contact to damon@lists.linux.dev and linux-mm@kvack.org if you depend on it.\n");
> > 
> > May I ask your opinion?
> 
> I'm OK with either one of these, but I prefer your first example over the second one.

Thank you for quick reply.  I will send v2 with the first one.


Thanks,
SJ

> 
> > [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/mm/memcontrol.c?h=v6.1#n3643
> > [2] https://docs.kernel.org/process/coding-style.html#breaking-long-lines-and-strings
> 
> Thanks.
> -- 
> ~Randy
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2023-02-10  4:35 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-09 19:20 SeongJae Park
2023-02-09 19:20 ` [PATCH 1/3] Docs/admin-guide/mm/damon/usage: add DAMON debugfs interface deprecation notice SeongJae Park
2023-02-09 19:20 ` [PATCH 2/3] mm/damon/Kconfig: " SeongJae Park
2023-02-09 19:20 ` [PATCH 3/3] mm/damon/dbgfs: print DAMON debugfs interface deprecation message SeongJae Park
2023-02-10  3:26   ` Randy Dunlap
2023-02-10  4:24     ` SeongJae Park
2023-02-10  4:32       ` Randy Dunlap
2023-02-10  4:35         ` SeongJae Park

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).