Re: [PATCH] connector: send event on write to /proc/[pid]/comm

From: Eric W. Biederman
Date: Thu Jul 01 2021 - 17:30:21 EST


권오훈 <ohoono.kwon@xxxxxxxxxxx> writes:

> While comm change event via prctl has been reported to proc connector by
> 'commit f786ecba4158 ("connector: add comm change event report to proc
> connector")', connector listeners were missing comm changes by explicit
> writes on /proc/[pid]/comm.
>
> Let explicit writes on /proc/[pid]/comm report to proc connector.

Is connector really useful? I am under the impression that connector
did not get much if any real uptake of users.

I know the impression that connector is not used and that there
are generally better mechanisms for what it provides has led to
connector not getting any namespace support. Similarly bugs
like the one you just have found persist.

If connector is actually useful then it is worth fixing little things
like this. But if no one is really using connector I suspect a better
patch direction would be to start figuring out how to deprecate and
remove connector.

Eric


> Signed-off-by: Ohhoon Kwon <ohoono.kwon@xxxxxxxxxxx>
> ---
> fs/proc/base.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/fs/proc/base.c b/fs/proc/base.c
> index 9cbd915025ad..3e1e6b56aa96 100644
> --- a/fs/proc/base.c
> +++ b/fs/proc/base.c
> @@ -95,6 +95,7 @@
> #include <linux/posix-timers.h>
> #include <linux/time_namespace.h>
> #include <linux/resctrl.h>
> +#include <linux/cn_proc.h>
> #include <trace/events/oom.h>
> #include "internal.h"
> #include "fd.h"
> @@ -1674,8 +1675,10 @@ static ssize_t comm_write(struct file *file, const char __user *buf,
> if (!p)
> return -ESRCH;
>
> - if (same_thread_group(current, p))
> + if (same_thread_group(current, p)) {
> set_task_comm(p, buffer);
> + proc_comm_connector(p);
> + }
> else
> count = -EINVAL;