diff mbox series

[v2,4/7] connector/cn_proc: Use task_is_in_init_pid_ns()

Message ID 20211208083320.472503-5-leo.yan@linaro.org (mailing list archive)
State New, archived
Headers show
Series pid: Introduce helper task_is_in_root_ns() | expand

Commit Message

Leo Yan Dec. 8, 2021, 8:33 a.m. UTC
This patch replaces open code with task_is_in_init_pid_ns() to check if
a task is in root PID namespace.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 drivers/connector/cn_proc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Education Directorate Dec. 14, 2021, 5:58 a.m. UTC | #1
On Wed, Dec 08, 2021 at 04:33:17PM +0800, Leo Yan wrote:
> This patch replaces open code with task_is_in_init_pid_ns() to check if
> a task is in root PID namespace.
> 
> Signed-off-by: Leo Yan <leo.yan@linaro.org>
> ---
>  drivers/connector/cn_proc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/connector/cn_proc.c b/drivers/connector/cn_proc.c
> index 646ad385e490..ccac1c453080 100644
> --- a/drivers/connector/cn_proc.c
> +++ b/drivers/connector/cn_proc.c
> @@ -358,7 +358,7 @@ static void cn_proc_mcast_ctl(struct cn_msg *msg,
>  	 * other namespaces.
>  	 */
>  	if ((current_user_ns() != &init_user_ns) ||
> -	    (task_active_pid_ns(current) != &init_pid_ns))
> +	    !task_is_in_init_pid_ns(current))
>  		return;
>

Sounds like there might scope for other wrappers - is_current_in_user_init_ns()

Acked-by: Balbir Singh <bsingharora@gmail.com>
Leo Yan Dec. 14, 2021, 7:05 a.m. UTC | #2
On Tue, Dec 14, 2021 at 04:58:32PM +1100, Balbir Singh wrote:
> On Wed, Dec 08, 2021 at 04:33:17PM +0800, Leo Yan wrote:
> > This patch replaces open code with task_is_in_init_pid_ns() to check if
> > a task is in root PID namespace.
> > 
> > Signed-off-by: Leo Yan <leo.yan@linaro.org>
> > ---
> >  drivers/connector/cn_proc.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/connector/cn_proc.c b/drivers/connector/cn_proc.c
> > index 646ad385e490..ccac1c453080 100644
> > --- a/drivers/connector/cn_proc.c
> > +++ b/drivers/connector/cn_proc.c
> > @@ -358,7 +358,7 @@ static void cn_proc_mcast_ctl(struct cn_msg *msg,
> >  	 * other namespaces.
> >  	 */
> >  	if ((current_user_ns() != &init_user_ns) ||
> > -	    (task_active_pid_ns(current) != &init_pid_ns))
> > +	    !task_is_in_init_pid_ns(current))
> >  		return;
> >
> 
> Sounds like there might scope for other wrappers - is_current_in_user_init_ns()

Indeed, for new wrapper is_current_in_user_init_ns(), I searched kernel
and located there have multiple places use open code.  If no one works
on this refactoring, I will send a new patchset for it separately.

> Acked-by: Balbir Singh <bsingharora@gmail.com>

Thank you for review, Balbir!  Also thanks review from Leon and
Suzuki.

Leo
diff mbox series

Patch

diff --git a/drivers/connector/cn_proc.c b/drivers/connector/cn_proc.c
index 646ad385e490..ccac1c453080 100644
--- a/drivers/connector/cn_proc.c
+++ b/drivers/connector/cn_proc.c
@@ -358,7 +358,7 @@  static void cn_proc_mcast_ctl(struct cn_msg *msg,
 	 * other namespaces.
 	 */
 	if ((current_user_ns() != &init_user_ns) ||
-	    (task_active_pid_ns(current) != &init_pid_ns))
+	    !task_is_in_init_pid_ns(current))
 		return;
 
 	/* Can only change if privileged. */