summaryrefslogtreecommitdiffstats
path: root/kernel/dma.c
diff options
context:
space:
mode:
authorOleg Nesterov2011-04-27 19:50:21 +0200
committerOleg Nesterov2011-04-28 13:01:35 +0200
commitfec9993db093acfc3999a364e31f8adae41fcb28 (patch)
tree6398e6f0d811128cb46c04ec631f3dcc6075728a /kernel/dma.c
parentsignal: retarget_shared_pending: consider shared/unblocked signals only (diff)
downloadkernel-qcow2-linux-fec9993db093acfc3999a364e31f8adae41fcb28.tar.gz
kernel-qcow2-linux-fec9993db093acfc3999a364e31f8adae41fcb28.tar.xz
kernel-qcow2-linux-fec9993db093acfc3999a364e31f8adae41fcb28.zip
signal: retarget_shared_pending: optimize while_each_thread() loop
retarget_shared_pending() blindly does recalc_sigpending_and_wake() for every sub-thread, this is suboptimal. We can check t->blocked and stop looping once every bit in shared_pending has the new target. Note: we do not take task_is_stopped_or_traced(t) into account, we are not trying to speed up the signal delivery or to avoid the unnecessary (but harmless) signal_wake_up(0) in this unlikely case. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Reviewed-by: Matt Fleming <matt.fleming@linux.intel.com> Acked-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel/dma.c')
0 files changed, 0 insertions, 0 deletions