diff options
author | Davidlohr Bueso <[email protected]> | 2021-12-10 10:20:58 -0800 |
---|---|---|
committer | Jens Axboe <[email protected]> | 2021-12-10 11:26:07 -0700 |
commit | e6a59aac8a8713f335a37d762db0dbe80e7f6d38 (patch) | |
tree | 5dbbaa64f3b99f6340475b25b58e0cd0d27b70b1 /drivers/usb/cdns3/cdns3-ep0.c | |
parent | a5c24552354ff1e35bb4022ebc0b791eb7882b04 (diff) |
block: fix ioprio_get(IOPRIO_WHO_PGRP) vs setuid(2)
do_each_pid_thread(PIDTYPE_PGID) can race with a concurrent
change_pid(PIDTYPE_PGID) that can move the task from one hlist
to another while iterating. Serialize ioprio_get to take
the tasklist_lock in this case, just like it's set counterpart.
Fixes: d69b78ba1de (ioprio: grab rcu_read_lock in sys_ioprio_{set,get}())
Acked-by: Oleg Nesterov <[email protected]>
Signed-off-by: Davidlohr Bueso <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jens Axboe <[email protected]>
Diffstat (limited to 'drivers/usb/cdns3/cdns3-ep0.c')
0 files changed, 0 insertions, 0 deletions