linux-xiaomi-chiron/include/linux/sched
Jens Axboe e788be95a5 task_work: allow TWA_SIGNAL without a rescheduling IPI
Some use cases don't always need an IPI when sending a TWA_SIGNAL
notification. Add TWA_SIGNAL_NO_IPI, which is just like TWA_SIGNAL, except
it doesn't send an IPI to the target task. It merely sets
TIF_NOTIFY_SIGNAL and wakes up the task.

This can be useful in avoiding a forceful transition to the kernel if the
task is running in userspace. Depending on the task_work in question, it
may be quite fine waiting for the next reschedule or kernel enter anyway,
or the use case may even have other mechanisms for hinting to the task
that a transition may be useful. This can drive more cooperative
scheduling of task_work.

Reviewed-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/821f42b6-7d91-8074-8212-d34998097de4@kernel.dk
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-04-30 08:39:32 -06:00
..
affinity.h sched/headers: Add initial new headers as identity mappings 2022-02-23 10:58:28 +01:00
autogroup.h
clock.h
cond_resched.h sched/headers: Add initial new headers as identity mappings 2022-02-23 10:58:28 +01:00
coredump.h mm: gup: pack has_pinned in MMF_HAS_PINNED 2021-06-29 10:53:48 -07:00
cpufreq.h sched/cpufreq: Consider reduced CPU capacity in energy calculation 2021-06-17 14:11:43 +02:00
cputime.h sched/cputime: Fix getrusage(RUSAGE_THREAD) with nohz_full 2021-12-02 15:08:22 +01:00
deadline.h sched/headers: Make the <linux/sched/deadline.h> header build standalone 2022-02-23 10:58:33 +01:00
debug.h sched: Change task_struct::state 2021-06-18 11:43:09 +02:00
hotplug.h
idle.h sched,livepatch: Use wake_up_if_idle() 2021-10-14 13:09:25 +02:00
init.h
isolation.h sched/isolation: Use single feature type while referring to housekeeping cpumask 2022-02-16 15:57:55 +01:00
jobctl.h
loadavg.h
mm.h mm, hugetlb: allow for "high" userspace addresses 2022-04-21 20:01:09 -07:00
nohz.h
numa_balancing.h
posix-timers.h sched/headers: Add initial new headers as identity mappings 2022-02-23 10:58:28 +01:00
prio.h
rseq_api.h sched/headers: Add initial new headers as identity mappings 2022-02-23 10:58:28 +01:00
rt.h
sd_flags.h sched/core: Introduce SD_ASYM_CPUCAPACITY_FULL sched_domain flag 2021-06-24 09:07:50 +02:00
signal.h task_work: allow TWA_SIGNAL without a rescheduling IPI 2022-04-30 08:39:32 -06:00
smt.h
stat.h sched: Make nr_iowait_cpu() return 32-bit value 2021-05-12 21:34:16 +02:00
sysctl.h Merge branch 'akpm' (patches from Andrew) 2022-03-22 16:11:53 -07:00
task.h exit: Mark do_group_exit() __noreturn 2022-03-15 10:32:43 +01:00
task_flags.h sched/headers: Add initial new headers as identity mappings 2022-02-23 10:58:28 +01:00
task_stack.h fork: Move task stack accounting to do_exit() 2022-02-22 22:25:02 +01:00
thread_info_api.h sched/headers: Add initial new headers as identity mappings 2022-02-23 10:58:28 +01:00
topology.h sched/fair: Adjust the allowed NUMA imbalance when SD_NUMA spans multiple LLCs 2022-02-11 23:30:08 +01:00
types.h
user.h fs/epoll: use a per-cpu counter for user's watches count 2021-09-08 11:50:27 -07:00
wake_q.h sched/wake_q: Provide WAKE_Q_HEAD_INITIALIZER() 2021-08-17 16:57:55 +02:00
xacct.h