linux/kernel/sched
Will Deacon 2f056f11e8 ANDROID: sched: fix race with CPU hot-unplug when overriding affinity
Migrating a task to a CPU which is concurrently being taken offline can
cause the migration to fail silently, with the task left running on the
old CPU. This is usually not the end of the world, but when forcefully
migrating a 32-bit task during execve() from a 64-bit task, it is
imperative that we do not attempt to return to userspace on a
64-bit-only CPU.

Take the CPU hotplug lock for read while forcefully migrating a 32-bit
task on execve() so that the migration cannot fail.

Bug: 187917024
Change-Id: I6eaf2a564fe3ad73c03f0a6029aade09c707330f
Signed-off-by: Will Deacon <willdeacon@google.com>
2021-05-25 17:43:02 +00:00
..
autogroup.c
autogroup.h
clock.c sched/clock: Use static_branch_likely() with sched_clock_running 2019-11-29 08:10:54 +01:00
completion.c completion: Use lockdep_assert_RT_in_threaded_ctx() in complete_all() 2020-03-23 18:40:25 +01:00
core.c ANDROID: sched: fix race with CPU hot-unplug when overriding affinity 2021-05-25 17:43:02 +00:00
cpuacct.c sched/cpuacct: Fix charge cpuacct.usage_sys 2020-05-19 20:34:14 +02:00
cpudeadline.c sched/deadline: Implement fallback mechanism for !fit case 2020-06-15 14:10:05 +02:00
cpudeadline.h
cpufreq_schedutil.c ANDROID: sched: Add vendor hooks to compute new cpu freq. 2021-04-23 18:42:38 -07:00
cpufreq.c ANDROID: sched: time: Export symbols needed for schedutil module 2021-02-22 11:58:23 -08:00
cpupri.c ANDROID: sched: Export symbol for vendor RT hook funcion 2021-01-12 12:57:37 -08:00
cpupri.h sched/rt: Optimize cpupri_find() on non-heterogenous systems 2020-03-06 12:57:27 +01:00
cputime.c ANDROID: vendor_hooks: Add hooks for account irqtime process tick 2021-05-13 08:26:15 +00:00
deadline.c FROMGIT: sched/deadline: Reduce rq lock contention in dl_add_task_root_domain() 2021-02-10 10:48:24 +00:00
debug.c Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
fair.c Revert "Revert "sched,fair: Alternative sched_slice()"" 2021-05-21 13:17:06 -07:00
features.h Revert "Revert "sched,fair: Alternative sched_slice()"" 2021-05-21 13:17:06 -07:00
idle.c Merge 5.10.20 into android12-5.10 2021-03-07 12:33:33 +01:00
isolation.c isolcpus: Affine unbound kernel threads to housekeeping cpus 2020-06-15 14:10:03 +02:00
loadavg.c ANDROID: GKI: loadavg: Export for get_avenrun 2020-08-12 15:08:42 +00:00
Makefile kcsan: Improve various small stylistic details 2019-11-20 10:47:23 +01:00
membarrier.c sched/membarrier: fix missing local execution of ipi_sync_rq_state() 2021-03-17 17:06:35 +01:00
OWNERS ANDROID: Add OWNERS files referring to the respective android-mainline OWNERS 2021-04-03 14:11:30 +00:00
pelt.c ANDROID: sched: pelt: Fix the PELT arrays 2021-03-04 11:53:51 +00:00
pelt.h sched/pelt: Cleanup PELT divider 2020-06-15 14:10:06 +02:00
psi.c Merge 5.10.36 into android12-5.10 2021-05-13 14:22:11 +02:00
rt.c ANDROID: sched/rt: Only enable RT sync for SMP targets 2021-03-01 18:50:27 +00:00
sched-pelt.h ANDROID: sched: pelt: Fix the PELT arrays 2021-03-04 11:53:51 +00:00
sched.h Merge 5.10.37 into android12-5.10 2021-05-15 09:28:55 +02:00
smp.h sched/headers: Split out open-coded prototypes into kernel/sched/smp.h 2020-05-28 11:03:20 +02:00
stats.c
stats.h psi: Move PF_MEMSTALL out of task->flags 2020-03-20 13:06:19 +01:00
stop_task.c treewide: Convert macro and uses of __section(foo) to __section("foo") 2020-10-25 14:51:49 -07:00
swait.c sched/swait: Prepare usage in completions 2020-03-21 16:00:23 +01:00
topology.c ANDROID: vendor_hooks: Add hooks for scheduler 2021-03-16 09:08:22 +00:00
wait_bit.c sched/wait: fix ___wait_var_event(exclusive) 2019-12-17 13:32:50 +01:00
wait.c ANDROID: Add a vendor hook that allow a module to modify the wake flag 2021-03-04 16:19:04 +00:00