summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO18
-rw-r--r--0002-blk-mq-fix-corruption-with-direct-issue.patch60
-rw-r--r--PKGBUILD16
3 files changed, 15 insertions, 79 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 39ac75e7ab69..93d37a264b84 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = linux-rt-bfq
- pkgver = 4.19.5.4
- pkgrel = 10
+ pkgver = 4.19.8.6
+ pkgrel = 1
url = https://github.com/Algodev-github/bfq-mq/
arch = x86_64
license = GPL2
@@ -11,10 +11,10 @@ pkgbase = linux-rt-bfq
makedepends = python-sphinx
makedepends = graphviz
options = !strip
- source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.19.5.tar.xz
- source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.19.5.tar.sign
- source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.19/patch-4.19.5-rt4.patch.xz
- source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.19/patch-4.19.5-rt4.patch.sign
+ source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.19.8.tar.xz
+ source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.19.8.tar.sign
+ source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.19/patch-4.19.8-rt6.patch.xz
+ source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.19/patch-4.19.8-rt6.patch.sign
source = https://gitlab.com/sirlucjan/kernel-patches/raw/master/4.19/bfq-sq-mq/4.19-bfq-sq-mq-v9r1-2K181212-rc1.patch
source = https://gitlab.com/sirlucjan/kernel-patches/raw/master/4.19/0100-Check-presence-on-tree-of-every-entity-after-every-a.patch
source = https://raw.githubusercontent.com/graysky2/kernel_gcc_patch/master/enable_additional_cpu_optimizations_for_gcc_v8.1+_kernel_v4.13+.patch
@@ -25,15 +25,14 @@ pkgbase = linux-rt-bfq
source = 99-linux.hook
source = linux.preset
source = 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch
- source = 0002-blk-mq-fix-corruption-with-direct-issue.patch
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
validpgpkeys = 64254695FFF0AA4466CC19E67B96E8162A8CF5D1
validpgpkeys = 5ED9A48FC54C0A22D1D0804CEBC26CDB5A56DE73
validpgpkeys = E644E2F1D45FA0B2EAA02F33109F098506FF0B14
- sha512sums = ee460800a071aeae966078d3e7dc525e1e8e9cbb406fe878438c55da4ea42d10f50c0ebfcf3ee4c792f3cc984ee8d8d3acdb8ca6bc11536fa6a4391de58643fb
+ sha512sums = c863dbfcba413a1d9ee396c20d40ede6c5f07f168f74ef604c261b11797226dced1912270203b2a2d3be000284f6cca72df6ed52675e260e8289a87b0d65f282
sha512sums = SKIP
- sha512sums = 648728f4088ca3ccb4f297500cba4c96d48dc73667df67dc08aa683fa3e6d8f300868754e88582894210e7d98d06f878c4bb149f31859aa3e6aa441ce9508cb9
+ sha512sums = 368818426719676e0e1fd39d3b6d3927565f94909a1d38392c804ebebcd88b867faa6397bfdaf4dafd44d6747909e60f51d1b088544fb1205a75066b51835514
sha512sums = SKIP
sha512sums = a014e72cadd0ceb52f10ceee6902a1732450c6b670f33cec643a9b3684d92d3ad311e5b9b0ac71b3ee65b52a4d4538fff1ed5e003f3e3979e0faa2679b5edb59
sha512sums = 0f96fa9ad784709973b32eea82075ceb3e9dc2482df6441a4607612806f069254e63508b1b562279622394e4a1fbebef1b87af8401c0b1210d5d0de9954245c8
@@ -45,7 +44,6 @@ pkgbase = linux-rt-bfq
sha512sums = 8742e2eed421e2f29850e18616f435536c12036ff793f5682a3a8c980cf5dbfc88d17fd9539c87de15d9e4663dc3190f964f18a4722940465437927b6052abbf
sha512sums = 2dc6b0ba8f7dbf19d2446c5c5f1823587de89f4e28e9595937dd51a87755099656f2acec50e3e2546ea633ad1bfd1c722e0c2b91eef1d609103d8abdc0a7cbaf
sha512sums = 560920b4ebf8d7b753f058a41da62d20fde1e4b42a42e73be11461d3fe25b59bc36250a66d9c1c6e3c499426b237427af5ba7586daa7c549d2cf7bb7087932a1
- sha512sums = aef8da49ccc4639f43c2a16d67c207417e26a1ee40d7a98aaa397038ef4a288b2361b951dcb2e1813df287041c482ab0e497fa161edafdc46446ab45311104dc
pkgname = linux-rt-bfq
pkgdesc = The Linux-rt-bfq kernel and modules with the RT patch and the BFQ-MQ scheduler.
diff --git a/0002-blk-mq-fix-corruption-with-direct-issue.patch b/0002-blk-mq-fix-corruption-with-direct-issue.patch
deleted file mode 100644
index 5ca4828bc1f9..000000000000
--- a/0002-blk-mq-fix-corruption-with-direct-issue.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 144c54b5c08cc1afc060281a79a9892e898337c6 Mon Sep 17 00:00:00 2001
-From: Jens Axboe <axboe@kernel.dk>
-Date: Tue, 4 Dec 2018 15:47:46 -0700
-Subject: [PATCH 2/2] blk-mq: fix corruption with direct issue
-
-If we attempt a direct issue to a SCSI device, and it returns BUSY, then
-we queue the request up normally. However, the SCSI layer may have
-already setup SG tables etc for this particular command. If we later
-merge with this request, then the old tables are no longer valid. Once
-we issue the IO, we only read/write the original part of the request,
-not the new state of it.
-
-This causes data corruption, and is most often noticed with the file
-system complaining about the just read data being invalid:
-
-[ 235.934465] EXT4-fs error (device sda1): ext4_iget:4831: inode #7142: comm dpkg-query: bad extra_isize 24937 (inode size 256)
-
-because most of it is garbage...
-
-This doesn't happen from the normal issue path, as we will simply defer
-the request to the hardware queue dispatch list if we fail. Once it's on
-the dispatch list, we never merge with it.
-
-Fix this from the direct issue path by flagging the request as
-REQ_NOMERGE so we don't change the size of it before issue.
-
-See also:
- https://bugzilla.kernel.org/show_bug.cgi?id=201685
-
-Fixes: 6ce3dd6eec1 ("blk-mq: issue directly if hw queue isn't busy in case of 'none'")
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
-Tested-by: Guenter Roeck <linux@roeck-us.net>
-Reviewed-by: Christoph Hellwig <hch@lst.de>
----
- block/blk-mq.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/block/blk-mq.c b/block/blk-mq.c
-index e3c39ea8e17b..66d64a13c50a 100644
---- a/block/blk-mq.c
-+++ b/block/blk-mq.c
-@@ -1698,6 +1698,15 @@ static blk_status_t __blk_mq_issue_directly(struct blk_mq_hw_ctx *hctx,
- break;
- case BLK_STS_RESOURCE:
- case BLK_STS_DEV_RESOURCE:
-+ /*
-+ * If direct dispatch fails, we cannot allow any merging on
-+ * this IO. Drivers (like SCSI) may have set up permanent state
-+ * for this request, like SG tables and mappings, and if we
-+ * merge to it later on then we'll still only do IO to the
-+ * original part.
-+ */
-+ rq->cmd_flags |= REQ_NOMERGE;
-+
- blk_mq_update_dispatch_busy(hctx, true);
- __blk_mq_requeue_request(rq);
- break;
---
-2.20.0.rc2.7.g965798d1f2
-
diff --git a/PKGBUILD b/PKGBUILD
index 15af6c0311e9..3efea5cd529f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -52,13 +52,13 @@ _use_current=
pkgbase=linux-rt-bfq
# pkgname=('linux-rt-bfq' 'linux-rt-bfq-headers' 'linux-rt-bfq-docs')
_major=4.19
-_minor=5
-_rtver=4
+_minor=8
+_rtver=6
pkgver=${_major}.${_minor}.${_rtver}
_pkgver=${_major}.${_minor}
_srcname=linux-${_pkgver}
_rtpatchver=rt${_rtver}
-pkgrel=10
+pkgrel=1
arch=('x86_64')
url="https://github.com/Algodev-github/bfq-mq/"
license=('GPL2')
@@ -91,8 +91,7 @@ source=("https://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz"
'99-linux.hook'
# standard config files for mkinitcpio ramdisk
'linux.preset'
- '0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch'
- '0002-blk-mq-fix-corruption-with-direct-issue.patch')
+ '0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch')
_kernelname=${pkgbase#linux}
: ${_kernelname:=-rt-bfq}
@@ -388,9 +387,9 @@ for _p in "${pkgname[@]}"; do
}"
done
-sha512sums=('ee460800a071aeae966078d3e7dc525e1e8e9cbb406fe878438c55da4ea42d10f50c0ebfcf3ee4c792f3cc984ee8d8d3acdb8ca6bc11536fa6a4391de58643fb'
+sha512sums=('c863dbfcba413a1d9ee396c20d40ede6c5f07f168f74ef604c261b11797226dced1912270203b2a2d3be000284f6cca72df6ed52675e260e8289a87b0d65f282'
'SKIP'
- '648728f4088ca3ccb4f297500cba4c96d48dc73667df67dc08aa683fa3e6d8f300868754e88582894210e7d98d06f878c4bb149f31859aa3e6aa441ce9508cb9'
+ '368818426719676e0e1fd39d3b6d3927565f94909a1d38392c804ebebcd88b867faa6397bfdaf4dafd44d6747909e60f51d1b088544fb1205a75066b51835514'
'SKIP'
'a014e72cadd0ceb52f10ceee6902a1732450c6b670f33cec643a9b3684d92d3ad311e5b9b0ac71b3ee65b52a4d4538fff1ed5e003f3e3979e0faa2679b5edb59'
'0f96fa9ad784709973b32eea82075ceb3e9dc2482df6441a4607612806f069254e63508b1b562279622394e4a1fbebef1b87af8401c0b1210d5d0de9954245c8'
@@ -401,8 +400,7 @@ sha512sums=('ee460800a071aeae966078d3e7dc525e1e8e9cbb406fe878438c55da4ea42d10f50
'2718b58dbbb15063bacb2bde6489e5b3c59afac4c0e0435b97fe720d42c711b6bcba926f67a8687878bd51373c9cf3adb1915a11666d79ccb220bf36e0788ab7'
'8742e2eed421e2f29850e18616f435536c12036ff793f5682a3a8c980cf5dbfc88d17fd9539c87de15d9e4663dc3190f964f18a4722940465437927b6052abbf'
'2dc6b0ba8f7dbf19d2446c5c5f1823587de89f4e28e9595937dd51a87755099656f2acec50e3e2546ea633ad1bfd1c722e0c2b91eef1d609103d8abdc0a7cbaf'
- '560920b4ebf8d7b753f058a41da62d20fde1e4b42a42e73be11461d3fe25b59bc36250a66d9c1c6e3c499426b237427af5ba7586daa7c549d2cf7bb7087932a1'
- 'aef8da49ccc4639f43c2a16d67c207417e26a1ee40d7a98aaa397038ef4a288b2361b951dcb2e1813df287041c482ab0e497fa161edafdc46446ab45311104dc')
+ '560920b4ebf8d7b753f058a41da62d20fde1e4b42a42e73be11461d3fe25b59bc36250a66d9c1c6e3c499426b237427af5ba7586daa7c549d2cf7bb7087932a1')
validpgpkeys=(
'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds