Thursday 12 November 2015

BFS 465, linux-4.3-ck1

Finally a resync to mainline linux, with linux-4.3.

BFS by itself:

4.3-sched-bfs-465.patch

-ck branded linux-4.3-ck1 patches:

4.3-ck1 patches

In addition to the usual collection of resyncs and minor updates, this includes 3 patches courtesy of Alfred Chen who maintained the fort while I was too busy to work on a resync for linux-4.2. (THANKS!) His changes fix a warning that happens on some system on startup, hopefully fix the long standing hang on heavy file access with truly unlocked block flush unplugging, and a build problem.

With such a large resync and update, the usual warnings apply regarding instability, file system corruption and unwanted impregnations.

EDIT: Build fix: bfs465-nohz-buildfix.patch

Enjoy!
お楽しみください

9 comments:

  1. Thanks CK! Booted into linux-ck 4.3.0-1 just fine and seems to be running smoothly.

    ReplyDelete
  2. thanks for the update. running fine so far, and no crashes with btrfs scrub or torrents.

    ReplyDelete
  3. Thanks ck! SMP built fine, but building UP fails due to:
    kernel/sched/bfs.c:2684:6: error: redefinition of ‘update_cpu_load_nohz’
    void update_cpu_load_nohz(void)
    ^
    In file included from include/linux/nmi.h:7:0,
    from kernel/sched/bfs.c:33:
    include/linux/sched.h:182:20: note: previous definition of ‘update_cpu_load_nohz’ was here
    static inline void update_cpu_load_nohz(void) { }
    ^
    scripts/Makefile.build:258: recipe for target 'kernel/sched/bfs.o' failed

    This is the cause:

    /linux/sched.h
    -----------------
    #if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ_COMMON)
    extern void update_cpu_load_nohz(void);
    #else
    static inline void update_cpu_load_nohz(void) { }
    #endif

    Here is the bfs definition:

    kernel/sched/bfs.c
    -----------------
    #ifdef CONFIG_NO_HZ_COMMON
    void update_cpu_load_nohz(void)
    {
    }

    void calc_load_enter_idle(void)
    {
    }

    void calc_load_exit_idle(void)
    {
    }
    #endif /* CONFIG_NO_HZ_COMMON */

    ReplyDelete
    Replies
    1. update_cpu_load_nohz() should be surround by CONFIG_SMP, the code looks like

      3 #ifdef CONFIG_NO_HZ_COMMON
      2
      1 #ifdef CONFIG_SMP
      3094 void update_cpu_load_nohz(void)
      1 {
      2 }
      3 #endif
      4
      5 void calc_load_enter_idle(void)
      6 {
      7 }
      8

      Delete
    2. Thanks AC; built and running uniprocessor on the ol' netbook now. :)

      Delete
    3. Basend on ck's initial patch and Alfred Chens additional info, here's a link to an updated patch by me:

      https://www.dropbox.com/s/qwtefl2spnmwxqi/bfs465-nohz-buildfix-pgzh.patch?dl=0

      Delete
  4. Hi Con,

    thanks for the new BFS. IS working fine here.
    Imho the best BFS since long time, heavy IO isn't a problem and idle top values are again under 0,10 and not on > 0,5.

    So again, thanks for your work and keep it on.
    Regards sysitos

    ReplyDelete
  5. Any word on making bfs work with 4.4.0?

    It seems the whole scheduler (core.c) stuff has changed since 4.3

    ReplyDelete
  6. Hi, I have this problem when do pacman -Syu it give me:
    virtualbox-ck-host-modules-ivy bridge: installing linux-ck-ivy bridge (4.4.7-1) interrupts addiction 'linux-ck-ivybridge <4.4'
    I uninstalled all virtualbox package but same result. Thanks

    ReplyDelete