diff mbox series

MIPS: Use rcu to lookup a task in mipsmt_sys_sched_setaffinity()

Message ID 20200831201402.2837-1-dave@stgolabs.net (mailing list archive)
State Accepted
Commit f0100c7f1aac7f10eb249c494de5016fcf8c0652
Headers show
Series MIPS: Use rcu to lookup a task in mipsmt_sys_sched_setaffinity() | expand

Commit Message

Davidlohr Bueso Aug. 31, 2020, 8:14 p.m. UTC
The call simply looks up the corresponding task (without iterating
the tasklist), which is safe under rcu instead of the tasklist_lock.
In addition, the setaffinity counter part already does this.

Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
---
 arch/mips/kernel/mips-mt-fpaff.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Thomas Bogendoerfer Sept. 3, 2020, 8:24 a.m. UTC | #1
On Mon, Aug 31, 2020 at 01:14:02PM -0700, Davidlohr Bueso wrote:
> The call simply looks up the corresponding task (without iterating
> the tasklist), which is safe under rcu instead of the tasklist_lock.
> In addition, the setaffinity counter part already does this.
> 
> Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
> ---
>  arch/mips/kernel/mips-mt-fpaff.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

applied to mips-next.

Thomas.
diff mbox series

Patch

diff --git a/arch/mips/kernel/mips-mt-fpaff.c b/arch/mips/kernel/mips-mt-fpaff.c
index 1a08428eedcf..6c590ef27648 100644
--- a/arch/mips/kernel/mips-mt-fpaff.c
+++ b/arch/mips/kernel/mips-mt-fpaff.c
@@ -167,7 +167,7 @@  asmlinkage long mipsmt_sys_sched_getaffinity(pid_t pid, unsigned int len,
 		return -EINVAL;
 
 	get_online_cpus();
-	read_lock(&tasklist_lock);
+	rcu_read_lock();
 
 	retval = -ESRCH;
 	p = find_process_by_pid(pid);
@@ -181,7 +181,7 @@  asmlinkage long mipsmt_sys_sched_getaffinity(pid_t pid, unsigned int len,
 	cpumask_and(&mask, &allowed, cpu_active_mask);
 
 out_unlock:
-	read_unlock(&tasklist_lock);
+	rcu_read_unlock();
 	put_online_cpus();
 	if (retval)
 		return retval;