Project

General

Profile

Support #620

Switching Arch Linux To Linux-ck Kernel

Added by Daniel Curtis almost 9 years ago. Updated almost 8 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Development Environment
Target version:
Start date:
05/25/2015
Due date:
% Done:

100%

Estimated time:
8.00 h
Spent time:

Description

This is a guide for installing the Linux-ck kernel on Arch linux.

Prepare the Environment

  • Make sure the system is up to date:
    sudo pacman -Syu
    

Install Linux-ck from Repo-ck

  • Edit the pacman.conf:
    vi /etc/pacman.conf
    
    • And add the following to the end of the file:
      [repo-ck]
      Server = http://repo-ck.com/$arch
      Server = http://repo-ck.com/$arch
      Server = http://repo-ck.com/$arch
      Server = http://repo-ck.com/$arch
      Server = http://repo-ck.com/$arch
      
  • Now repo key needs to be received and locally signed:
    pacman-key -r 5EE46C4C
    pacman-key --lsign-key 5EE46C4C
    
  • Refresh the repo metadata:
    pacman -Sy
    
  • (Optional) Identify the CPU:
    gcc -c -Q -march=native --help=target | grep march
    
  • Install the generic Linux-ck kernel:
    pacman -S linux-ck-generic
    
    • (Optional) Or install the CPU specific kernel:
      pacman -S linux-ck-kx
      
  • Install the generic Linux-ck kernel headers:
    pacman -S linux-ck-generic-headers
    
    • (Optional) Or install the CPU specific kernel:
      pacman -S linux-ck-kx
      

Install nVidia driver

  • Install the generic Linux-ck nVidia driver:
    pacman -S nvidia-304xx-ck-generic
    
    • (Optional) Or install the CPU specific nVidia driver:
      pacman -S nvidia-304xx-ck-kx
      

Install VirtualBox host driver:

  • Install the generic Linux-ck VirtualBox host driver:
    pacman -S virtualbox-ck-host-modules-generic
    
    • (Optional) Or install the CPU specific VirtualBox host driver:
      pacman -S virtualbox-ck-host-modules-kx
      
  • Update the grub config:
    grub-mkconfig -o /boot/grub/grub.cfg
    

Install Linux-ck from the AUR

Install yaourt

Receive PGP keys

  • Receive Linus Torvalds' PGP key:
    gpg --recv-keys 79BE3E4300411886
    
    • Then utimately trust the key:
      trust
      5
      y
      quit
      
  • Receive Greg Kroah-Hartman's PGP key:
    gpg --recv-keys 38DBBDC86092693E
    
    • Then ultimately trust the key:
      trust
      5
      y
      quit
      

Install Linux-ck kernel

  • Install the linux-ck package from the AUR:
    yaourt linux-ck
    
    • (Optional) Install the linux-ck-headers package:
      yaourt linux-ck-headers
      
  • Edit the PKGBUILD file and add the following:
    _BFQ_enable_="y" 
    
  • Update the grub config:
    grub-mkconfig -o /boot/grub/grub.cfg
    

Install Linux-ck nVidia driver

  • (Optional) Install the linux-ck nvidia package:
    yaourt nvidia-304xx-ck
    

Install Linux-ck VirtualBox host driver

  • (Optional) Install the linux-ck virtualbox host modules:
    yaourt virtualbox-ck-host-modules
    

Enable Budget Fair Queueing (BFQ) I/O Scheduling

  • Check which I/O scheduler is in use:
    cat /sys/block/sda/queue/scheduler
    
    • Example output:
      noop deadline [cfq] bfq
      
  • Enable BFQ on /dev/sda without rebooting:
    echo bfq > /sys/block/sda/queue/scheduler
    
  • Check which I/O scheduler is in use:
    cat /sys/block/sda/queue/scheduler
    
    • Example output:
      noop deadline cfq [bfq]
      
  • Use BFQ on /dev/sda at boot persistently, create the set_IO_scheduler.conf file:
    sudo vi /etc/tmpfiles.d/set_IO_scheduler.conf
    
    • And add the following:
      w /sys/block/sda/queue/scheduler - - - - bfq
      

BFQ Script

I had problems getting the tmpfiles.d configuration to work properly on systemd 219, so I created a script to easily enable BFQ on /dev/sda.

  • Create the enable-bfq.sh script:
    sudo nano /usr/local/sbin/enable-bfq.sh
    
    • And add the following:
      #!/bin/sh
      ## Script to enable BFQ on /dev/sda
      echo bfq > /sys/block/sda/queue/scheduler
      
  • Make it executable:
    sudo chmod +x /usr/local/sbin/enable-bfq.sh
    

Resources

#1

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
  • % Done changed from 0 to 10
#2

Updated by Daniel Curtis almost 9 years ago

  • % Done changed from 10 to 20
  • Description updated (diff)
#3

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
  • Status changed from New to In Progress
  • % Done changed from 20 to 50
#4

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
#5

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
  • Status changed from In Progress to Resolved
  • % Done changed from 50 to 100
#6

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
#7

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
#8

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
#9

Updated by Daniel Curtis almost 9 years ago

  • Description updated (diff)
#10

Updated by Daniel Curtis almost 9 years ago

  • Status changed from Resolved to Closed
#11

Updated by Daniel Curtis almost 8 years ago

  • Description updated (diff)

Also available in: Atom PDF