summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoan Figueras2016-12-14 15:17:24 +0100
committerJoan Figueras2016-12-14 15:17:24 +0100
commit80871d56ee2e7cfadf5b5f76ca37bbe7609d6c27 (patch)
tree3cf17e8ac6281c7092a8e9a0f3a07919359f9dcd
parent4866a7acedb77ca434013d7e6e808a07a81a4520 (diff)
downloadaur-80871d56ee2e7cfadf5b5f76ca37bbe7609d6c27.tar.gz
Enabled BFQ. Thanks to linux-bfs in AUR
-rw-r--r--.SRCINFO6
-rw-r--r--0005-BFQ-Fix.patch33
-rw-r--r--0006-BFQ-Fix.patch24
-rw-r--r--PKGBUILD15
4 files changed, 72 insertions, 6 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 7ab39638ea66..1ba08b8d2ccb 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = linux-bld
pkgver = 4.8.14
- pkgrel = 1
+ pkgrel = 2
url = https://github.com/rmullick/linux
arch = i686
arch = x86_64
@@ -28,6 +28,8 @@ pkgbase = linux-bld
source = http://algo.ing.unimo.it/people/paolo/disk_sched/patches/4.8.0-v8r4/0002-block-introduce-the-BFQ-v7r11-I-O-sched-to-be-ported.patch
source = http://algo.ing.unimo.it/people/paolo/disk_sched/patches/4.8.0-v8r4/0003-block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-v7r11-to-.patch
source = http://algo.ing.unimo.it/people/paolo/disk_sched/patches/4.8.0-v8r4/0004-Turn-BFQ-v7r11-into-BFQ-v8r4-for-4.8.0.patch
+ source = 0005-BFQ-Fix.patch
+ source = 0006-BFQ-Fix.patch
source = https://raw.githubusercontent.com/rmullick/bld-patches/master/BLD-4.8.patch
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
@@ -47,6 +49,8 @@ pkgbase = linux-bld
sha256sums = c8d17a7893d5780fd0c90311470160dcc842b81621b30671150e2e3224be86d2
sha256sums = e47ea5b1c2f20cfade4e6a85bff1320dac84ac638e48ef4eec7285fe9e1e1def
sha256sums = c3c96e304aef378f0cc6e1fb18eeabe176e6ba918d13060c105f3d8cabc85f59
+ sha256sums = bc3177e6026a7363d6190e8b7446005aec38801292602344131ad4e3e67813cb
+ sha256sums = e2eae358c5417b3ab33abdaf965fb997c615cdbd2cbe7a750526c040374da006
sha256sums = 16a5d04bbd76d2dc79473b83af434aa54a72f41f0677823c0381762f75ccb33c
pkgname = linux-bld
diff --git a/0005-BFQ-Fix.patch b/0005-BFQ-Fix.patch
new file mode 100644
index 000000000000..ad66ca69a2ba
--- /dev/null
+++ b/0005-BFQ-Fix.patch
@@ -0,0 +1,33 @@
+From 69f18bb587a4805b2b18bb4ba91dced87a8fda06 Mon Sep 17 00:00:00 2001
+From: Paolo Valente <paolo.valente@linaro.org>
+Date: Sat, 22 Oct 2016 15:26:33 +0200
+Subject: [PATCH 86/86] BUGFIX: Replace max wrongly used for modulo numbers
+
+Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
+---
+ block/bfq-iosched.c | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c
+index eef6ff4..c161ff0 100644
+--- a/block/bfq-iosched.c
++++ b/block/bfq-iosched.c
+@@ -2179,9 +2179,13 @@ static void __bfq_set_in_service_queue(struct bfq_data *bfqd,
+ * not only expires, but also remains with no
+ * request.
+ */
+- bfqq->last_wr_start_finish += jiffies -
+- max_t(unsigned long, bfqq->last_wr_start_finish,
+- bfqq->budget_timeout);
++ if (time_after(bfqq->budget_timeout,
++ bfqq->last_wr_start_finish))
++ bfqq->last_wr_start_finish +=
++ jiffies - bfqq->budget_timeout;
++ else
++ bfqq->last_wr_start_finish = jiffies;
++
+ if (time_is_after_jiffies(bfqq->last_wr_start_finish)) {
+ pr_crit(
+ "BFQ WARNING:last %lu budget %lu jiffies %lu",
+Contact GitHub API Training Shop Blog About
+
diff --git a/0006-BFQ-Fix.patch b/0006-BFQ-Fix.patch
new file mode 100644
index 000000000000..fa361f2778e5
--- /dev/null
+++ b/0006-BFQ-Fix.patch
@@ -0,0 +1,24 @@
+From 69f18bb587a4805b2b18bb4ba91dced87a8fda06 Mon Sep 17 00:00:00 2001
+From: Paolo Valente <paolo.valente@linaro.org>
+Date: Sat, 22 Oct 2016 15:26:33 +0200
+Subject: [PATCH 86/86] BUGFIX: Remove wrong conversion in use of bfq_fifo_expirebug
+
+Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
+---
+ block/bfq-iosched.c | 3 +--
+ 1 file changed, 1 insertions(+), 2 deletions(-)
+
+diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c
+index eef6ff4..c161ff0 100644
+--- a/block/bfq-iosched.c
++++ b/block/bfq-iosched.c
+@@ -4268,8 +4268,7 @@
+
+ bfq_add_request(rq);
+
+- rq->fifo_time = ktime_get_ns() +
+- jiffies_to_nsecs(bfqd->bfq_fifo_expire[rq_is_sync(rq)]);
++ rq->fifo_time = ktime_get_ns() + bfqd->bfq_fifo_expire[rq_is_sync(rq)];
+ list_add_tail(&rq->queuelist, &bfqq->fifo);
+
+ bfq_rq_enqueued(bfqd, bfqq, rq);
diff --git a/PKGBUILD b/PKGBUILD
index ddf32903c173..48a586a3c2b5 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,7 +8,7 @@ _kernelname=-bld
pkgver=4.8.14
_srcname=linux-4.8
_pkgver2=${_srcname#*-}.0
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url="https://github.com/rmullick/linux"
license=('GPL2')
@@ -37,6 +37,9 @@ source=("http://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz"
"${_bfqpath}/0002-block-introduce-the-BFQ-${_bfqversion_old}-I-O-sched-to-be-ported.patch"
"${_bfqpath}/0003-block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-${_bfqversion_old}-to-.patch"
"${_bfqpath}/0004-Turn-BFQ-${_bfqversion_old}-into-BFQ-${_bfqversion}-for-${_pkgver2}.patch"
+ # patches from https://github.com/linusw/linux-bfq/commits/bfq-v8
+ '0005-BFQ-Fix.patch'
+ '0006-BFQ-Fix.patch'
"https://raw.githubusercontent.com/rmullick/bld-patches/master/${_BLDpatch}"
)
@@ -56,6 +59,8 @@ sha256sums=('3e9150065f193d3d94bcf46a1fe9f033c7ef7122ab71d75a7fb5a2f0c9a7e11a'
'c8d17a7893d5780fd0c90311470160dcc842b81621b30671150e2e3224be86d2'
'e47ea5b1c2f20cfade4e6a85bff1320dac84ac638e48ef4eec7285fe9e1e1def'
'c3c96e304aef378f0cc6e1fb18eeabe176e6ba918d13060c105f3d8cabc85f59'
+ 'bc3177e6026a7363d6190e8b7446005aec38801292602344131ad4e3e67813cb'
+ 'e2eae358c5417b3ab33abdaf965fb997c615cdbd2cbe7a750526c040374da006'
'16a5d04bbd76d2dc79473b83af434aa54a72f41f0677823c0381762f75ccb33c')
validpgpkeys=(
@@ -93,10 +98,10 @@ prepare() {
msg2 "Patch source to enable more gcc CPU optimizatons via the make nconfig"
patch -Np1 -i "${srcdir}/${_gcc_patch}"
-# msg "Patching source with BFQ patches"
-# for p in $(ls ${srcdir}/000{1,2,3,4}-block*BFQ*.patch); do
-# patch -Np1 -i "$p"
-# done
+ msg "Patching source with BFQ patches"
+ for p in $(ls ${srcdir}/000*BFQ*.patch); do
+ patch -Np1 -i "$p"
+ done
msg2 "Patches from Archlinux standard package"
# https://bugzilla.kernel.org/show_bug.cgi?id=189851