Announcement

Collapse
No announcement yet.

Linux 4.15-rc2 Kernel Released

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Linux 4.15-rc2 Kernel Released

    Phoronix: Linux 4.15-rc2 Kernel Released

    The second weekly release candidate to the Linux 4.15 kernel was released early on Sunday...

    http://www.phoronix.com/scan.php?pag...5-rc2-Released

  • #2
    Easier than using git is to download the tar package from kernel.org. The 4.15-rc2 kernel is at kernel.org already.
    https://www.kernel.org/

    Tomb Raider 2013 Benchmark at fullhd normal settings shows average 115 fps that is in line with previous kernels.
    Code:
    xfce@ryzen5pc:~$ screenfetch
             _,met$$$$$gg.           xfce@ryzen5pc
          ,g$$$$$$$$$$$$$$$P.        OS: Debian testing buster
        ,g$$P""       """Y$$.".      Kernel: x86_64 Linux 4.15.0-rc2
       ,$$P'              `$$$.      Uptime: 4m
      ',$$P       ,ggs.     `$$b:    Packages: 1747
      `d$$'     ,$P"'   .    $$$     Shell: bash 4.4.12
       $$P      d$'     ,    $$P     Resolution: 1920x1080
       $$:      $$.   -    ,d$$'     DE: XFCE
       $$\;      Y$b._   _,d$P'      WM: Xfwm4
       Y$$.    `.`"Y$$$$P"'          WM Theme: Galaxy
       `$$b      "-.__               GTK Theme: Xfce-cadmium [GTK2]
        `Y$$                         Icon Theme: Tango
         `Y$$.                       Font: Sans 10
           `$$b.                     CPU: AMD Ryzen 5 1600 Six-Core @ 12x 2.728GHz [43.5°C]
             `Y$$b.                  GPU: AMD POLARIS11 (DRM 3.23.0 / 4.15.0-rc2, LLVM 5.0.1)
                `"Y$b._              RAM: 681MiB / 7986MiB
                    `""""
    Last edited by debianxfce; 12-03-2017, 12:45 PM.

    Comment


    • #3
      Available now from Ubuntu: http://kernel.ubuntu.com/~kernel-ppa...ine/v4.15-rc2/

      EDIT: Awesome.. on my RX 480, Night Light for GNOME is working again for me, and the system no longer freezes on resume from standby (both were issues on rc1). Great work.

      Code:
      $ uname -a
      Linux ubuntu 4.15.0-041500rc2-generic #201712031230 SMP Sun Dec 3 17:32:03 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
      $ cat /sys/module/amdgpu/parameters/dc
      1
      Dare I say my system feels a little snappier on 4.15 than 4.14.x. I felt that way after rc1, and now rc2 as well.
      Last edited by perpetually high; 12-03-2017, 02:44 PM.

      Comment


      • #4
        Originally posted by perpetually high View Post
        https://freedesktop.org/wiki/Softwar...Optimizations/


        "
        16. Don't use debug kernels. Debug kernels are slow
        "

        Use a non debug 1000Hz timer custom kernel. With a ssd it boots several seconds faster and works snappier.

        Code:
        xfce@ryzen5pc:~$ systemd-analyze time
        Startup finished in 1.991s (kernel) + 946ms (userspace) = 2.937s
        Last edited by debianxfce; 12-03-2017, 02:49 PM.

        Comment


        • #5
          Originally posted by debianxfce View Post
          Use a non debug 1000Hz timer custom kernel. With a ssd it boots several seconds faster and works snappier.
          I'd like to try it out, I've seen you mention it before. My only experience from using a different timer was very positive (xanmod custom kernel was using a 500Hz timer). The difference in gaming was definitely obvious.

          To confirm, it would be recompiling the kernel with these config settings changed?

          Code:
          CONFIG_DEBUG_INFO=n (changing from y to n)
          and also:

          Code:
          # CONFIG_HZ_100 is not set
          # CONFIG_HZ_250 is not set
          # CONFIG_HZ_300 is not set
          CONFIG_HZ_1000=y
          CONFIG_HZ=1000
          Does that look right?

          Comment


          • #6
            Originally posted by debianxfce View Post
            Easier than using git is to download the tar package from kernel.org. The 4.15-rc2 kernel is at kernel.org already.
            https://www.kernel.org/
            It's only easier if you can't manage to take 5 minute only course on how to use git.

            Otherwise I have no idea how would I run daily snapshots of kernel branches without my single 20 long bash script that compiles everything (kernel, nvidia module, vbox module) automatically every night, updates efi-stub based boot loader via efibootmgr and notifies me if anything goes wrong (merge problem with my patchset, nvidia/vbox driver breakage). I manage 3 separate kernels branches this way (vanilla master, my own branch and stable release branch), just so that I have an option to boot into different kernel if anything breaks and stuff. Since I compile daily from the same tree, it's pretty rare that a kernel build takes more than 30 seconds and it runs in background anyway.

            Code:
             Linux tpruzina 4.15.0-rc1-tpruzina-master-2db767d988 #1579 SMP PREEMPT Sat Dec 2 02:17:03 CET 2017 x86_64 Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz GenuineIntel GNU/Linux
            Note that bold number signifies number of (successful) builds from given tree. And I literally spend zero time on this unless something breaks (which tends to happen once every two months on average, typically in nvidia kernel module).
            Last edited by tpruzina; 12-03-2017, 03:05 PM.

            Comment


            • #7
              Originally posted by tpruzina View Post

              It's only easier if you can't manage to take 5 minute only course on how to use git.

              Otherwise I have no idea how would I run daily snapshots of kernel branches without my single 20 long bash script that compiles everything (kernel, nvidia module, vbox module) automatically every night, updates efi-stub based boot loader via efibootmgr and notifies me if anything goes wrong (merge problem with my patchset, nvidia/vbox driver breakage). I manage 3 separate kernels branches this way (vanilla master, my own branch and stable release branch), just so that I have an option to boot into different kernel if anything breaks and stuff. Since I compile daily from the same tree, it's pretty rare that a kernel build takes more than 30 seconds and it runs in background anyway.

              Code:
               Linux tpruzina 4.15.0-rc1-tpruzina-master-2db767d988 #1579 SMP PREEMPT Sat Dec 2 02:17:03 CET 2017 x86_64 Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz GenuineIntel GNU/Linux
              Note that bold number signifies number of (successful) builds from given tree. And I literally spend zero time on this unless something breaks (which tends to happen once every two months on average, typically in nvidia kernel module).
              Where's that script? What distro do you use?

              Comment


              • #8
                For a while now, I've been following the upstream stable kernel releases on my Debian 8 desktop with this cronjob I made:

                Code:
                #!/bin/bash
                kp="$HOME/dev/linux"
                
                # Disable -dbg packages
                kcs='s/CONFIG_DEBUG_INFO=./CONFIG_DEBUG_INFO=n/'
                # Select 1000 Hz
                kcs+=';s/CONFIG_HZ_\(.*\)=./CONFIG_HZ_\1=n;s/.*CONFIG_HZ_1000.*/CONFIG_HZ_1000=y/;s/CONFIG_HZ=.*/CONFIG_HZ=1000/'
                # Enable GVT-g
                #kcs+=';s/CONFIG_DRM_I915_GVT=./CONFIG_DRM_I915_GVT=y/'
                
                kernelgit="https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git"
                inarray() { local n=$1 h; shift; for h; do [[ $n = "$h" ]] && return; done; return 1; }
                stable_ver() { git branch -r --no-color | sed 's/^..//' | sort -V | tail -n2 | head -n1; }
                
                if [[ $# -le 0 ]]; then
                    # Setup environment
                    [[ $(dpkg -s build-essential git sed sudo) ]] ||
                        apt install build-essential git sed sudo
                    [[ -d "$kp/autobuild" ]] ||
                        mkdir -p "$kp/autobuild" || exit 1
                    [[ -d "$kp/linux-stable" ]] ||
                        git clone "$kernelgit" "$kp/linux-stable" || exit 1
                    [[ -f "$kp/linux-stable/.config" ]] ||
                        sed "$kcs" /boot/config-"$(uname -r)"* > "$kp/linux-stable/.config" || exit 1
                
                    # Check for updates
                    cd "$kp/linux-stable" || exit 1
                    git checkout "$(stable_ver)" 2> >(grep -v HEAD)
                    oldver="$(git describe)"
                    git fetch 2>/dev/null || exit 1
                    git checkout "$(stable_ver)" 2> >(grep -v HEAD)
                    #git checkout master # To build latest RC
                    newver="$(git describe)"
                
                    # Build latest kernel-image if not built already
                    if [[ $newver != "$oldver" || -z $(ls -A "$kp"/autobuild/*.deb 2>/dev/null) ]]; then
                        rm -fv "$kp"/autobuild/{*.deb,*.changes,ChangeLog-*}
                
                        make olddefconfig &&
                        make -j"$(nproc)" bindeb-pkg &&
                
                        if [[ $newver != "$oldver" ]]; then
                            git log "$oldver..$newver" > "../ChangeLog-${newver:1}"
                        else
                            git log "v$(uname -r)..$newver" > "../ChangeLog-$(uname -r)-${newver:1}"
                        fi
                        mv -v ../{*.deb,*.changes,ChangeLog-*} ../autobuild/
                
                        cd "$kp/autobuild" || exit 1
                        pkgs=(linux-image-*.deb)
                        DISPLAY=:0 x-terminal-emulator -e \
                            sudo --prompt="Executing as %U: autobuild.sh install ${pkgs[*]} \
                            [sudo] password for %p: " "$0" install "$PWD" "${pkgs[@]}" 2>/dev/null
                    fi
                elif [[ $1 == "install" && -d $2 ]]; then
                    cd "$2" || exit 1
                    ls --color -lh .;echo
                    echo "Changelog: file://$(find "$2" -ctime 0 -name 'ChangeLog-*')";echo
                    df -h /boot;echo
                    uname -a;uptime;echo
                
                    # Select kernels to purge (interactive)
                    reply='.'
                    until [[ $reply = "" ]]; do
                        mapfile -O 1 -t kernels < <(dpkg-query -f '${binary:Package}\n' -W 'linux-image-[0-9]*' | grep -v -e \\-dbg -e "linux-image-$(uname -r)")
                        for k in ${!kernels[*]}; do
                            if ! inarray "${kernels[$k]}" "${purge[@]}"; then
                                printf "%4d: %s\\n" "$k" "${kernels[$k]}"
                            else
                                printf "❌%4d: %s\\n" "$k" "${kernels[$k]}"
                            fi
                        done
                        read -n1 -rp $'\nPress <num> to select for purge, <Enter> to continue. ' reply
                        if inarray "${kernels[$reply]}" "${purge[@]}"; then
                            for i in "${!purge[@]}"; do
                                [[ ${purge[i]} = "${kernels[$reply]}" ]] &&  # || ${purge[i]} = "${kernels[$reply]/image/firmware-image}"
                                    unset 'purge[i]'
                            done; echo
                        else
                            purge+=("${kernels[$reply]}")
                            echo
                        fi
                    done
                
                    apt purge "${purge[@]}"
                    dpkg -i "${@:3}"
                fi

                Comment


                • #9
                  Originally posted by tpruzina View Post

                  It's only easier if you can't manage to take 5 minute only course on how to use git.

                  Otherwise I have no idea how would I run daily snapshots of kernel branches without my single 20 long bash script that compiles everything (kernel, nvidia module, vbox module) automatically every night, updates efi-stub based boot loader via efibootmgr and notifies me if anything goes wrong (merge problem with my patchset, nvidia/vbox driver breakage). I manage 3 separate kernels branches this way (vanilla master, my own branch and stable release branch), just so that I have an option to boot into different kernel if anything breaks and stuff. Since I compile daily from the same tree, it's pretty rare that a kernel build takes more than 30 seconds and it runs in background anyway.

                  Note that bold number signifies number of (successful) builds from given tree. And I literally spend zero time on this unless something breaks (which tends to happen once every two months on average, typically in nvidia kernel module).
                  How do you find the latest nvidia driver without any manual effort? Nouveau surely crashes more often than that. Apparently you don't care about new drivers and features?

                  Comment


                  • #10
                    Originally posted by perpetually high View Post
                    Does that look right?
                    Can't you read: .config:
                    "#
                    # Automatically generated file; DO NOT EDIT.
                    # Linux/x86_64 4.15.0-rc2 Kernel Configuration
                    "

                    Use the command make xconfig. It takes care of dependencies and shows them.

                    Comment

                    Working...
                    X