/|\

Welcome to the Slackware Documentation Project

Differences

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

Link to this comparison view

Next revision
Previous revision
howtos:hardware:bfq_io_scheduler [2014/10/30 00:32 (UTC)]
ricky_cardo created
howtos:hardware:bfq_io_scheduler [2015/07/13 11:59 (UTC)] (current)
ricky_cardo [Use BFQ IO scheduler] Added kernel config note change
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.+
  
- First collect your existing kernel configuration+  Why do I want BFQ?  -Seems to speed up disk based IO see the Source section for more info\\  
-<code bash>zcat /proc/config.gz > BFQ_CONFIG</code>+ [[http://algo.ing.unimo.it/people/paolo/disk_sched/|http://algo.ing.unimo.it/people/paolo/disk_sched/]]
  
- * 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' +  * First collect your existing kernel configuration. <code bash> 
-<code bash>CONFIG_IOSCHED_BFQ=y+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 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> 
 +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 27: 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
  
 +  * add lilo entry and update lilo.
 +
 +  * More Details here [[howtos:slackware_admin:kernelbuilding|Building a Linux Kernel from Source]]
 + 
  
 ====== Sources ====== ====== Sources ======
-<!-- If you are copying information from another source, then specify that source --> +  * 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]] --> +  * Originally written by [[wiki:ricky_cardo:xxx | ricky_cardo]] 
-<!-- Authors are allowed to give credit to themselves! --> +  Idea from rpi work by ponce adding bfq
-<!-- * Originally written by [[wiki:ricky_cardo:xxx | User X]] --> +
-<!-- 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}}

In Other Languages
QR Code
QR Code howtos:hardware:bfq_io_scheduler (generated for current page)