[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
howtos:misc:howto_bfq_io_scheduler [2014/10/30 02:25 (UTC)] – [Sources] ricky_cardohowtos:hardware:bfq_io_scheduler [2015/07/13 11:59 (UTC)] (current) – [Use BFQ IO scheduler] Added kernel config note change ricky_cardo
Line 1: Line 1:
-<!-- Add your text below. We strongly advise to start with a Headline (see button bar above). --> 
 ====== Use BFQ IO scheduler ====== ====== Use BFQ IO scheduler ======
  Budget Fair Queueing (BFQ) Storage-I/O Scheduler  Budget Fair Queueing (BFQ) Storage-I/O Scheduler
- * Why do I want BFQ?  -Seems to speed up disk based IO see the Source section for more info. + 
 +  * Why do I want BFQ?  -Seems to speed up disk based IO see the Source section for more info. \\ 
  [[http://algo.ing.unimo.it/people/paolo/disk_sched/|http://algo.ing.unimo.it/people/paolo/disk_sched/]]  [[http://algo.ing.unimo.it/people/paolo/disk_sched/|http://algo.ing.unimo.it/people/paolo/disk_sched/]]
  
- * First collect your existing kernel configuration. +  * First collect your existing kernel configuration. <code bash> 
-<code bash>zcat /proc/config.gz > BFQ_CONFIG</code>+zcat /proc/config.gz > BFQ_CONFIG 
 +</code>
  
- * Next prepare your BFQ_CONFIG file(use vi or nano etc.) I like to locate "CONFIG_DEFAULT_CFQ" section and make it look like the below. Be careful not to have duplicate lines.  I'm thinking there is a better way maybe someone could point it out. Basically add the two lines about BFQ change the existing CONFIG_DEFAULT_CFQ to "is not set" and add "CONFIG_DEFAULT_BFQ=y' +  * Next prepare your BFQ_CONFIG file (use vi or nano etc)I like to locate "CONFIG_DEFAULT_CFQ" section and make it look like below. Be careful not to have duplicate lines.  I'm thinking there is a better way maybe someone could point it out. Basically add the two lines about BFQ change the existing CONFIG_DEFAULT_CFQ to "is not set" and add "CONFIG_DEFAULT_BFQ=y'<code bash> 
-<code bash>CONFIG_IOSCHED_BFQ=y+CONFIG_IOSCHED_BFQ=y
 CONFIG_CGROUP_BFQIO=y CONFIG_CGROUP_BFQIO=y
 # CONFIG_DEFAULT_DEADLINE is not set # CONFIG_DEFAULT_DEADLINE is not set
 # CONFIG_DEFAULT_CFQ is not set # CONFIG_DEFAULT_CFQ is not set
-CONFIG_DEFAULT_BFQ=y</code>+CONFIG_DEFAULT_BFQ=y 
 +</code
 +<note>You may not need to manually edit the BFQ_CONFIG.  I noticed make oldconfig will prompt you about the patches added. </note>
  
- * Now grab the code: (I'm using 3.14 in this sample as Slackware-current is currently using 3.14.18) +  * Now grab the code: (I'm using 3.14 in this sample as Slackware-current is currently using 3.14.18) <code bash> 
-<code bash>VERSION=3.14.0-v7r6 # the version you want+VERSION=3.14.0-v7r6 # the version you want
 wget -nd --no-parent --level 1 -r -R "*.html*" --reject $VERSION \ wget -nd --no-parent --level 1 -r -R "*.html*" --reject $VERSION \
-    http://algo.ing.unimo.it/people/paolo/disk_sched/patches/$VERSION</code>+    http://algo.ing.unimo.it/people/paolo/disk_sched/patches/$VERSION 
 +</code> 
 +     
 +  * Now copy your config file to /usr/src/linux and rename it to ''.config'' \\ Example: (assuming the config you created above is in your home directory) <code bash> 
 +cp $HOME/BFQ_CONFIG /usr/src/linux/.config 
 +</code>
          
- * Next copy these files to /usr/src/linux and then patch(You'll want 0001 to 0003) +  * Next copy these files to /usr/src/linux and then patch (you'll want 0001 to 0003)<code bash>
-<code bash>+
 cp ./000* /usr/src/linux;cd /usr/src/linux cp ./000* /usr/src/linux;cd /usr/src/linux
 patch -p1 < 0001-block-cgroups-kconfig-build-bits-for-BFQ-v7r6-3.14.patch  patch -p1 < 0001-block-cgroups-kconfig-build-bits-for-BFQ-v7r6-3.14.patch 
Line 28: Line 35:
 </code> </code>
  
- * Now copy your config file to /usr/src/linux and rename it .config 
-example: (assuming the config you created above is in your home directory) 
-<code bash> cp /$HOME/BFQ_CONFIG /usr/src/linux.config</code> 
  
- * cd /usr/src/linux ;make oldconfig ;make -j4 && make modules_install 
  
- copy bzImage and System.map to boot folder +  cd /usr/src/linux ;make oldconfig ;make -j4 && make modules_install
-  +
- * add lilo entry and update lilo.+
  
- More Details here [[howtos:slackware_admin:kernelbuilding|Building a Linux Kernel from Source]] +  copy bzImage and System.map to boot folder
- +
  
 +  * add lilo entry and update lilo.
  
 +  * More Details here [[howtos:slackware_admin:kernelbuilding|Building a Linux Kernel from Source]]
 + 
  
 ====== Sources ====== ====== Sources ======
-* Original source: [[http://algo.ing.unimo.it/people/paolo/disk_sched/sources.php]] +  * Original source: [[http://algo.ing.unimo.it/people/paolo/disk_sched/sources.php]] 
-<!-- Authors are allowed to give credit to themselves! --> +  * Originally written by [[wiki:ricky_cardo:xxx | ricky_cardo]] 
-* Originally written by [[wiki:ricky_cardo:xxx | ricky_cardo]] +  * Idea from rpi work by ponce adding bfq
-* Idea from rpi work by ponce adding bfq +
-<!-- * Contributions by [[wiki:user:yyy | User Y]] -->+
  
 <!-- Please do not modify anything below, except adding new tags.--> <!-- Please do not modify anything below, except adding new tags.-->
-<!-- You must remove the tag-word "template" below before saving your new page --> + 
-{{tag>howtos template}}+{{tag>howtos}}
 howtos:hardware:bfq_io_scheduler ()