Monday, November 13, 2017

PDS 0.98e release

PDS 0.98e is released with the following changes

1. Sync with 4.14 mainline scheduler changes.

This is sync-up release for 4.14. The remain known issue is the task accounting issue reported by Edurado, hopefully be fixed in this release.

Enjoy PDS 0.98e for v4.14 kernel, :)

code are available at
https://bitbucket.org/alfredchen/linux-gc/commits/branch/linux-4.14.y-pds
and also
https://github.com/cchalpha/linux-gc/commits/linux-4.14.y-pds

 All-in-one patch is available too.

11 comments:

  1. All-in-one patch fails against 4.14:

    patching file Documentation/scheduler/sched-PDS-mq.txt
    patching file Documentation/sysctl/kernel.txt
    patching file arch/powerpc/platforms/cell/spufs/sched.c
    patching file arch/x86/Kconfig
    Hunk #1 succeeded at 951 (offset 1 line).
    patching file drivers/cpufreq/cpufreq.c
    patching file drivers/cpufreq/cpufreq_conservative.c
    patching file drivers/cpufreq/cpufreq_governor.c
    patching file drivers/cpufreq/cpufreq_ondemand.c
    patching file drivers/cpufreq/intel_pstate.c
    patching file fs/proc/base.c
    Hunk #1 succeeded at 465 (offset 1 line).
    patching file include/linux/init_task.h
    Hunk #1 succeeded at 172 (offset 1 line).
    Hunk #2 succeeded at 221 (offset 1 line).
    Hunk #3 succeeded at 372 (offset 1 line).
    patching file include/linux/ioprio.h
    Hunk #1 succeeded at 52 (offset 1 line).
    patching file include/linux/jiffies.h
    Hunk #1 succeeded at 168 (offset 1 line).
    patching file include/linux/sched.h
    Hunk #1 succeeded at 27 (offset 1 line).
    Hunk #2 succeeded at 540 (offset 1 line).
    Hunk #3 succeeded at 564 (offset 1 line).
    Hunk #4 succeeded at 1143 (offset 1 line).
    patching file include/linux/sched/deadline.h
    Hunk #1 succeeded at 4 (offset 1 line).
    Hunk #2 succeeded at 40 (offset 1 line).
    patching file include/linux/sched/nohz.h
    Hunk #1 succeeded at 6 (offset 1 line).
    patching file include/linux/sched/prio.h
    Hunk #1 succeeded at 20 (offset 1 line).
    patching file include/linux/sched/task.h
    Hunk #1 succeeded at 80 (offset 1 line).
    patching file include/linux/skip_list.h
    patching file include/uapi/linux/sched.h
    Hunk #1 succeeded at 37 (offset 1 line).
    patching file init/Kconfig
    patching file kernel/cgroup/cpuset.c
    patching file kernel/delayacct.c
    patching file kernel/exit.c
    patching file kernel/livepatch/transition.c
    patching file kernel/locking/rtmutex.c
    patching file kernel/sched/Makefile
    Hunk #1 succeeded at 16 (offset 1 line).
    patching file kernel/sched/cpufreq_schedutil.c
    patching file kernel/sched/cputime.c
    patching file kernel/sched/pds.c
    patching file kernel/sched/pds_sched.h
    patching file kernel/sched/sched.h
    Hunk #1 FAILED at 1.
    Hunk #2 succeeded at 2090 (offset 1 line).
    1 out of 2 hunks FAILED -- saving rejects to file kernel/sched/sched.h.rej
    patching file kernel/sched/stats.c
    Hunk #1 succeeded at 23 (offset 1 line).
    Hunk #2 succeeded at 43 (offset 1 line).
    Hunk #3 succeeded at 73 (offset 1 line).
    patching file kernel/sysctl.c
    patching file kernel/time/posix-cpu-timers.c
    Hunk #1 succeeded at 818 (offset 1 line).
    Hunk #2 succeeded at 828 (offset 1 line).
    Hunk #3 succeeded at 840 (offset 1 line).
    Hunk #4 succeeded at 1081 (offset 1 line).
    patching file kernel/trace/trace_selftest.c
    Hunk #1 succeeded at 1041 (offset 1 line).

    ReplyDelete
    Replies
    1. Sorry, the all-in-one patch file is re-generated and uploaded. Pls fetch it again.

      Delete
    2. Thanks Alfred... all-in-one patch applied successfully. Building now... Cheers

      Delete
  2. Thank you Alfred Chen! The subject of the post should be fixed to PDS 0.98e release.

    ReplyDelete
  3. Alfred,

    I've got the following warning on suspend to RAM:

    https://gist.github.com/bf750a707ee01cab18c44f4e92d13628

    It corresponds to this code:

    ===
    1324 /*
    1325 * Clearly, migrating tasks to offline CPUs is a fairly daft thing.
    1326 */
    1327 WARN_ON_ONCE(!cpu_online(new_cpu));
    ===

    Any idea on this?

    ReplyDelete
    Replies
    1. I've also found some commit in v4.14 that looks related:

      edd8e41d2e3cbd6ebe13ead30eb1adc6f48cbb33

      Maybe, this will give you a hint.

      Delete
    2. Also, easily reproducible with a VM: https://gist.github.com/9edf3cd2a5edb9c704b7c11a43765ff5

      Delete
    3. Even simpler reproducer: https://gist.github.com/ae0c106e1f693e09146c6a4816c557bc

      No s2ram involved, just offline/online some CPU and get the warning.

      Delete
    4. This code change is picked up by 4.14 mainline sync-up. Will look into it.

      Delete
    5. @pf
      Please try below patch(should fix in the code path shown in above oops loga) and catch other oops log if warning still pop up.

      https://bitbucket.org/alfredchen/linux-gc/downloads/v4.14_pds098e_sync_warning_fix.patch

      Delete
    6. Hi, Alfred.

      With this patch I cannot reproduce the issue. Looks like a perfect hit.

      Thanks.

      Delete