summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjc_gargma <jc_gargma@iserlohn-fortress.net>2019-07-25 20:10:21 -0700
committerjc_gargma <jc_gargma@iserlohn-fortress.net>2019-07-25 20:10:21 -0700
commit94ee97036af526c59091a9fd9dddaa38f5758b70 (patch)
treeff6303234cb2986b074b183a8bc93d05241b6fa6
parentUpdated to 5.1.16.a (diff)
downloadlinux-libre-hardened-94ee97036af526c59091a9fd9dddaa38f5758b70.tar.xz
Updated to 5.1.19.a
-rw-r--r--0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch52
-rw-r--r--PKGBUILD24
-rw-r--r--graysky_bdver2-hotfix.patch6
3 files changed, 69 insertions, 13 deletions
diff --git a/0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch b/0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch
new file mode 100644
index 0000000..d811047
--- /dev/null
+++ b/0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch
@@ -0,0 +1,52 @@
+From f6f6b798c7330d7851fee4bbe835c3954886fc3f Mon Sep 17 00:00:00 2001
+From: Johannes Berg <johannes.berg@intel.com>
+Date: Wed, 3 Jul 2019 11:10:49 +0300
+Subject: iwlwifi: mvm: disable TX-AMSDU on older NICs
+
+On older NICs, we occasionally see issues with A-MSDU support,
+where the commands in the FIFO get confused and then we see an
+assert EDC because the next command in the FIFO isn't TX.
+
+We've tried to isolate this issue and understand where it comes
+from, but haven't found any errors in building the A-MSDU in
+software.
+
+At least for now, disable A-MSDU support on older hardware so
+that users can use it again without fearing the assert.
+
+This fixes https://bugzilla.kernel.org/show_bug.cgi?id=203315.
+
+Signed-off-by: Johannes Berg <johannes.berg@intel.com>
+Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
+Acked-by: Kalle Valo <kvalo@codeaurora.org>
+---
+ drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c | 14 +++++++++++++-
+ 1 file changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
+index fdbabca0280e..3a076e5e319f 100644
+--- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
++++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
+@@ -468,7 +468,19 @@ int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm)
+ ieee80211_hw_set(hw, SUPPORTS_VHT_EXT_NSS_BW);
+ ieee80211_hw_set(hw, BUFF_MMPDU_TXQ);
+ ieee80211_hw_set(hw, STA_MMPDU_TXQ);
+- ieee80211_hw_set(hw, TX_AMSDU);
++ /*
++ * On older devices, enabling TX A-MSDU occasionally leads to
++ * something getting messed up, the command read from the FIFO
++ * gets out of sync and isn't a TX command, so that we have an
++ * assert EDC.
++ *
++ * It's not clear where the bug is, but since we didn't used to
++ * support A-MSDU until moving the mac80211 iTXQs, just leave it
++ * for older devices. We also don't see this issue on any newer
++ * devices.
++ */
++ if (mvm->cfg->device_family >= IWL_DEVICE_FAMILY_9000)
++ ieee80211_hw_set(hw, TX_AMSDU);
+ ieee80211_hw_set(hw, TX_FRAG_LIST);
+
+ if (iwl_mvm_has_tlc_offload(mvm)) {
+--
+cgit v1.2.1-1-g437b
diff --git a/PKGBUILD b/PKGBUILD
index 4b20011..8051cc6 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -10,6 +10,7 @@
# Parabola version lacks graysky gcc patch with bdver2 fix
# Parabola version lacks ath9k regdom and raid6 algo patches
# Parabola version allows SEED, SM3, SM4, and Streebog
+# Parabola version allows insecure filesystems
# Parabola version is 300 Hz
# Parabola version supports Intel ME
# Parabola version is not configured for openrc
@@ -17,7 +18,7 @@
pkgbase=linux-libre-hardened
_majver=5.1
-_minver=16
+_minver=19
if [ "$_minver" == "0" ]; then
_pkgver=${_majver}
else
@@ -26,7 +27,7 @@ _minver=16
_gnumajver=${_majver}-gnu
_gnupkgver=${_pkgver}-gnu
_hardenedver=a
-_gcc_more_v='20180509'
+_gccpatchver='20190714'
_srcname=linux-${_majver}
pkgver=${_pkgver}.${_hardenedver}
pkgrel=1
@@ -40,8 +41,9 @@ source=(
https://linux-libre.fsfla.org/pub/linux-libre/releases/${_gnumajver}/linux-libre-${_gnumajver}.tar.xz{,.sign}
https://linux-libre.fsfla.org/pub/linux-libre/releases/${_gnupkgver}/patch-${_gnumajver}-${_gnupkgver}.xz{,.sign}
https://github.com/anthraxx/linux-hardened/releases/download/${pkgver}/linux-hardened-${pkgver}.patch{,.sig}
+ 0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch
graysky_bdver2-hotfix.patch
- enable_additional_cpu_optimizations-$_gcc_more_v.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/$_gcc_more_v.tar.gz
+ kernel_gcc_patch-${_gccpatchver}.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/${_gccpatchver}.tar.gz
ath9k-regdom-hack.patch
raid6-default-algo.patch
config.x86_64 # the main kernel config files
@@ -51,12 +53,13 @@ source=(
)
sha256sums=('94ad2e0d4d94c3ff2d2c7b37b0f90bc99ea37ed2db3a684a41f5a23411697b94'
'SKIP'
- 'dab3e0ecdcc29d4d9723f0e1d966ef0e5a870426b49b50554821470cc8cca6fa'
+ 'f6c8a1215385a962eca9d13cc25d0d2e2d517ac61364c01d52b94fd045497d39'
'SKIP'
- '483ff7011a8048bce9781a00163aa660b3bc613932e444db4bc24742133682f9'
+ '8f5c7513549035c56088ad5487ab0f2278195b21a8d85659bce6bc86f988aa1b'
'SKIP'
- '229e063a578db0a278108f37b24da20c2a2a18d825e98a67e426cb0f4b492e4a'
- '226e30068ea0fecdb22f337391385701996bfbdba37cdcf0f1dbf55f1080542d'
+ '8449de698dfc8f95ff03dbfd98b6abdd71dbc4238896256690cb856fe366aac3'
+ '5d078323fc39482a8f828f721e55246d061914602f0cdadaa4787de50a2a6228'
+ '2466fb4aecc66d1b258b4cbdb2f215b5099f266d8c4386bb62ad1a0acd0caf5b'
'e7ebf050c22bcec0028c0b3c79fd6d3913b0370ecc6a23dfe78ce475630cf503'
'0f81d6e4158b7beeb0eb514f1b9401f7e23699cb0f7b0d513e25dae1815daaeb'
'3e36d4c4673c1b1d39ffe232ecea2fc562ea53b407c6517d29b3944e0acb2cd4'
@@ -81,7 +84,8 @@ prepare() {
fi
# Hotfixes
- # msg2 "Applying hotfixes"
+ msg2 "Applying hotfixes"
+ patch -p1 -i ../0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch
# linux hardened patch
msg2 "Applying hardened patch"
@@ -90,11 +94,11 @@ prepare() {
# graysky gcc hotfixes
msg2 "Applying graysky gcc patch hotfixes"
- patch -p1 -i ../graysky_bdver2-hotfix.patch "$srcdir/kernel_gcc_patch-${_gcc_more_v}/enable_additional_cpu_optimizations_for_gcc_v8.1+_kernel_v4.13+.patch"
+ patch -p1 -i ../graysky_bdver2-hotfix.patch "$srcdir/kernel_gcc_patch-${_gccpatchver}/enable_additional_cpu_optimizations_for_gcc_v9.1+_kernel_v4.13+.patch"
# graysky gcc patch
msg2 "Applying graysky cpu patch"
- patch -p1 -i ../kernel_gcc_patch-${_gcc_more_v}/enable_additional_cpu_optimizations_for_gcc_v8.1+_kernel_v4.13+.patch
+ patch -p1 -i ../kernel_gcc_patch-${_gccpatchver}/enable_additional_cpu_optimizations_for_gcc_v9.1+_kernel_v4.13+.patch
# Ignore ath9k eeprom patch
diff --git a/graysky_bdver2-hotfix.patch b/graysky_bdver2-hotfix.patch
index 5cd9dbc..3e2b4f4 100644
--- a/graysky_bdver2-hotfix.patch
+++ b/graysky_bdver2-hotfix.patch
@@ -1,6 +1,6 @@
---- a/kernel_gcc_patch-20180509/enable_additional_cpu_optimizations_for_gcc_v8.1+_kernel_v4.13+.patch
-+++ b/kernel_gcc_patch-20180509/enable_additional_cpu_optimizations_for_gcc_v8.1+_kernel_v4.13+.patch
-@@ -492,7 +492,7 @@ + cflags-$(CONFIG_MBARCELONA) += $(call cc-option,-march=barcelona)
+--- a/kernel_gcc_patch-20190714/enable_additional_cpu_optimizations_for_gcc_v9.1+_kernel_v4.13+.patch
++++ b/kernel_gcc_patch-20190714/enable_additional_cpu_optimizations_for_gcc_v9.1+_kernel_v4.13+.patch
+@@ -492,7 +492,7 @@
+ cflags-$(CONFIG_MBOBCAT) += $(call cc-option,-march=btver1)
+ cflags-$(CONFIG_MJAGUAR) += $(call cc-option,-march=btver2)
+ cflags-$(CONFIG_MBULLDOZER) += $(call cc-option,-march=bdver1)