Sunday, April 26, 2015

linux-4.0.y-gc updates

All needed patches are set, here are the changes

BFS:
1. Add a [Sync] patch for 0462, that is bfs: [Sync] __schedule() and io_schedule_timeout()
2. bfs: [Sync] sched_setscheduler() logic, v2
*Refine the code in check_task_change()
3. bfs: [3/3] priodl to speed up try_preempt(), V2
*V2 rq's priodl store in grq.rq_priodls array, for 32bits system, grq.priodl_lock needs to be held for r/w.
4. bfs: Full cpumask based and LLC sensitive cpu selection, V2
* V2 Fix issue when SMP config enabled, but non of SMT or MC config is
enabled.
* Add enhancement code for cpu hotplug, for the case the cpu is idle when it goes offline, which will cause grq.cpu_idle_map still be set.

Others:
Remove the patch for IBM thinkpad KB, upstream has fixed the issue.

Link location

Have fun with linux 4.0

BR Alfred

6 comments:

  1. Booted OK for me. Will test more. Thanks.

    ReplyDelete
  2. Sorry, that I'm late with my test results.

    Your 4.0.y-gc code is working fine on my machine.

    The reason for beeing late is, that tuxonice for 4.0.0 code has gotten much more unreliable. And I needed to verify, if I had made a wrong patch from Nigel's github. Still no official release patch from him? Also, the github download of a zip file (of Nigel's tree/branch) sometimes omits files. Bah!
    Tuxonice's unreliability is, that when it hangs/sticks, it most times sticks when doing atomic copy/restore on here after suspend to disk/ hibernate. With the 3.19 version of tuxonice I was able to retry the saved image, and most times was lucky to get my system back either immediately or after some attempts.

    Someone still needs to explain, why attempt 1 (failing) to load the image differs from attempt 8 (working) !

    The tuxonice for 4.0.0 had an extra failure possibility on here. It just made the system hang, when X got up again after hibernation. But at that late stage, the hibernation image is gone forever.

    I ended up with modifying the 3.19 tuxonice patch for use on a 4.0.x kernel, that is now working well. Possible to retry the image more than 7 times... but to get my system back working @ No.8 (!) and no hangups when X gets up.

    Best regards,
    Manuel

    ReplyDelete
  3. I'd suggest you return nothing instead of NULL in try_preempt() function:

    https://bitbucket.org/alfredchen/linux-gc/commits/5233cd3f422f76f59787eebeea34009c2a1a9665?at=linux-4.0.y-gc#Lkernel/sched/bfs.cT1379

    as it has void type.

    ReplyDelete
    Replies
    1. Thanks for pointing it out. I never enable SMT_NICE. Will plan an sync up to 4.0.2 this weekend and this fix will be included.

      BR Alfred

      Delete