Skip to content

rt: Increase/decrease the nr of migratory tasks when enabling/disabling migration

Daniel Bristot de Oliveira linux-rt-users lkml 2 versions – Applied

Status from this message: Applied.

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest2 patches 6 repliesApplied
  2. v12 patches 8 repliesSuperseded

Changes in v2 from the cover letter

- Print .dl/rt_nr_migratory only if CONFIG_SMP is set (Ingo Molnar)
- Use helper functions to reduce duplicated code (Ingo Molnar)

Patches in v2 Applied

#Subject and filesSizeRepliesApplied
1/2sched/debug: Inform the number of rt/dl task that can migratekernel/sched/debug.c+15 -20 replies
2/2rt: Increase/decrease the nr of migratory tasks when enabling/disabling migrationkernel/sched/core.c+44 -56 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [PATCH V2 0/2] rt: Increase/decrease the nr of migratory tasks when enabling/disabling migration

This is the continuation of the:
[RFC] rt: Some fixes for migrate_disable/enable

However, migrate_disable/enable was reworked during the 4.11-rt window, so it turns out that 2 of 3 problems were fixed. Good!

But there is still one problem, which is the dl/rt_nr_migratory inc/dec.

The problem is reproducible with the following command [in a 4 CPU box]:

  # chrt -f 1 taskset -c 3 cat /dev/full | taskset -c 0-2 grep 'batman'

By applying only the patch 1/2, it is possible to see the problem with the following command:

  # cat /proc/sched_debug | grep rt_nr_migratory
    .rt_nr_migratory               : 18446744073709542849
    .rt_nr_migratory               : 18446744073709538566
    .rt_nr_migratory               : 18446744073709548257
    .rt_nr_migratory               : 0

The detailed description of the bug, and the fix, is in the log of the patch 2/2.

Changes from V1:
- Print .dl/rt_nr_migratory only if CONFIG_SMP is set (Ingo Molnar)
- Use helper functions to reduce duplicated code (Ingo Molnar)

Changes from RFC:
- The problems addressed in the patches:
x rt: Update nr_cpus_allowed if the affinity of a task changes while its
migration is disabled
x rt: Checks if task needs migration when re-enabling migration

were fixed, so these patches are not needed anymore, while patch:

x rt: Increase/decrease the nr of migratory tasks when
enabling/disabling migration

is still needed, so it was reworked for the new implementation.

- The patch showing the rt/dl_nr_migratory was added.

Daniel Bristot de Oliveira (2):
sched/debug: Inform the number of rt/dl task that can migrate
rt: Increase/decrease the nr of migratory tasks when
enabling/disabling migration

 kernel/sched/core.c  | 49 ++++++++++++++++++++++++++++++++++++++++++++-----
 kernel/sched/debug.c | 17 +++++++++++++++--
 2 files changed, 59 insertions(+), 7 deletions(-)
Signature · 1 line
2.9.4