Linux RT 4.14 Merge conflict

Dan Murphy
2018-07-23T21:28:39Z

[-- Attachment #1: Type: text/plain, Size: 295 bytes --]

Hello!

There is a merge conflict when merging in the latest 4.14 stable release into the current 4.14 rt stable release.

Attached is the merge conflict that is seen.

We appreciate it if the merge conflict resolution can come from the RT stable branch.

Dan

--
------------------
Dan Murphy

[-- Attachment #2: linux_41457_rt_merge_conflict.txt --]
[-- Type: text/plain, Size: 3173 bytes --]

diff --cc kernel/sched/core.c
index d6c2afc8c629,31615d1ae44c..000000000000
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@@ -1016,16 -978,8 +1043,12 @@@ struct migration_arg
static struct rq *__migrate_task(struct rq *rq, struct rq_flags *rf,
struct task_struct *p, int dest_cpu)
{
- if (p->flags & PF_KTHREAD) {
- if (unlikely(!cpu_online(dest_cpu)))
- return rq;
- } else {
- if (unlikely(!cpu_active(dest_cpu)))
- return rq;
- }
-
/* Affinity changed (again). */
++<<<<<<< HEAD
+ if (!cpumask_test_cpu(dest_cpu, p->cpus_ptr))
++=======
+ if (!is_cpu_allowed(p, dest_cpu))
++>>>>>>> 5553933d40157e41ed2ed6390e2ebff4f548f96e
return rq;

update_rq_clock(rq);
@@@ -1595,11 -1507,10 +1618,17 @@@ static int select_fallback_rq(int cpu,

for (;;) {
/* Any allowed, online CPU? */
++<<<<<<< HEAD
+ for_each_cpu(dest_cpu, p->cpus_ptr) {
+ if (!(p->flags & PF_KTHREAD) && !cpu_active(dest_cpu))
+ continue;
+ if (!cpu_online(dest_cpu))
++=======
+ for_each_cpu(dest_cpu, &p->cpus_allowed) {
+ if (!is_cpu_allowed(p, dest_cpu))
++>>>>>>> 5553933d40157e41ed2ed6390e2ebff4f548f96e
continue;
+
goto out;
}

@@@ -1662,8 -1573,7 +1691,12 @@@ int select_task_rq(struct task_struct *
* [ this allows ->select_task() to simply return task_cpu(p) and
* not worry about this generic constraint ]
*/
++<<<<<<< HEAD
+ if (unlikely(!cpumask_test_cpu(cpu, p->cpus_ptr) ||
+ !cpu_online(cpu)))
++=======
+ if (unlikely(!is_cpu_allowed(p, cpu)))
++>>>>>>> 5553933d40157e41ed2ed6390e2ebff4f548f96e
cpu = select_fallback_rq(task_cpu(p), p);

return cpu;
diff --cc kernel/trace/trace.c
index d67ac5c2bc66,e268750bd4ad..000000000000
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@@ -3389,17 -3374,15 +3389,23 @@@ static void print_func_help_header_irq(
tgid ? tgid_space : space);
seq_printf(m, "# %s / _----=> need-resched\n",
tgid ? tgid_space : space);
- seq_printf(m, "# %s| / _---=> hardirq/softirq\n",
+ seq_printf(m, "# %s| / _----=> need-resched_lazy\n",
+ tgid ? tgid_space : space);
+ seq_printf(m, "# %s|| / _---=> hardirq/softirq\n",
tgid ? tgid_space : space);
- seq_printf(m, "# %s|| / _--=> preempt-depth\n",
+ seq_printf(m, "# %s||| / _--=> preempt-depth\n",
tgid ? tgid_space : space);
- seq_printf(m, "# %s||| / delay\n",
+ seq_printf(m, "# %s|||| / delay\n",
tgid ? tgid_space : space);
++<<<<<<< HEAD
+ seq_printf(m, "# TASK-PID CPU#%s||||| TIMESTAMP FUNCTION\n",
+ tgid ? " TGID " : space);
+ seq_printf(m, "# | | | %s||||| | |\n",
++=======
+ seq_printf(m, "# TASK-PID %sCPU# |||| TIMESTAMP FUNCTION\n",
+ tgid ? " TGID " : space);
+ seq_printf(m, "# | | %s | |||| | |\n",
++>>>>>>> 5553933d40157e41ed2ed6390e2ebff4f548f96e
tgid ? " | " : space);
}