linux: update fpu patches for 5.3

At the moment we experience bad instabilities with linux 5.3:

https://github.com/zfsonlinux/zfs/issues/9346

as the zfs-native method of disabling the FPU is buggy.
This commit is contained in:
Jörg Thalheim 2019-10-02 19:33:51 +01:00
parent 1ba3f3f00f
commit 96097ab665
No known key found for this signature in database
GPG Key ID: B3F5D81B0C6967C4
4 changed files with 57 additions and 6 deletions

View File

@ -0,0 +1,42 @@
From 1e010beda2896bdf3082fb37a3e49f8ce20e04d8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
Date: Thu, 2 May 2019 05:28:08 +0100
Subject: [PATCH] x86/fpu: Export kernel_fpu_{begin,end}() with
EXPORT_SYMBOL_GPL
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
We need these symbols in zfs as the fpu implementation breaks userspace:
https://github.com/zfsonlinux/zfs/issues/9346
Signed-off-by: Jörg Thalheim <joerg@thalheim.io>
---
arch/x86/kernel/fpu/core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c
index 12c70840980e..352538b3bb5d 100644
--- a/arch/x86/kernel/fpu/core.c
+++ b/arch/x86/kernel/fpu/core.c
@@ -102,7 +102,7 @@ void kernel_fpu_begin(void)
}
__cpu_invalidate_fpregs_state();
}
-EXPORT_SYMBOL_GPL(kernel_fpu_begin);
+EXPORT_SYMBOL(kernel_fpu_begin);
void kernel_fpu_end(void)
{
@@ -111,7 +111,7 @@ void kernel_fpu_end(void)
this_cpu_write(in_kernel_fpu, false);
preempt_enable();
}
-EXPORT_SYMBOL_GPL(kernel_fpu_end);
+EXPORT_SYMBOL(kernel_fpu_end);
/*
* Save the FPU state (mark it for reload if necessary):
--
2.23.0

View File

@ -59,8 +59,14 @@
}; };
export_kernel_fpu_functions = { export_kernel_fpu_functions = {
name = "export_kernel_fpu_functions"; "4.14" = {
patch = ./export_kernel_fpu_functions.patch; name = "export_kernel_fpu_functions";
patch = ./export_kernel_fpu_functions_4_14.patch;
};
"5.3" = {
name = "export_kernel_fpu_functions";
patch = ./export_kernel_fpu_functions_5_3.patch;
};
}; };
# patches from https://lkml.org/lkml/2019/7/15/1748 # patches from https://lkml.org/lkml/2019/7/15/1748

View File

@ -15821,7 +15821,7 @@ in
# when adding a new linux version # when adding a new linux version
kernelPatches.cpu-cgroup-v2."4.11" kernelPatches.cpu-cgroup-v2."4.11"
kernelPatches.modinst_arg_list_too_long kernelPatches.modinst_arg_list_too_long
kernelPatches.export_kernel_fpu_functions kernelPatches.export_kernel_fpu_functions."4.14"
]; ];
}; };
@ -15829,7 +15829,7 @@ in
kernelPatches = kernelPatches =
[ kernelPatches.bridge_stp_helper [ kernelPatches.bridge_stp_helper
kernelPatches.modinst_arg_list_too_long kernelPatches.modinst_arg_list_too_long
kernelPatches.export_kernel_fpu_functions kernelPatches.export_kernel_fpu_functions."4.14"
]; ];
}; };
@ -15837,12 +15837,15 @@ in
kernelPatches = kernelPatches =
[ kernelPatches.bridge_stp_helper [ kernelPatches.bridge_stp_helper
kernelPatches.modinst_arg_list_too_long kernelPatches.modinst_arg_list_too_long
kernelPatches.export_kernel_fpu_functions kernelPatches.export_kernel_fpu_functions."4.14"
]; ];
}; };
linux_5_3 = callPackage ../os-specific/linux/kernel/linux-5.3.nix { linux_5_3 = callPackage ../os-specific/linux/kernel/linux-5.3.nix {
kernelPatches = [ kernelPatches.bridge_stp_helper ]; kernelPatches = [
kernelPatches.bridge_stp_helper
kernelPatches.export_kernel_fpu_functions."5.3"
];
}; };
linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {