diff options
author | Christian Poessinger <christian@poessinger.com> | 2020-09-12 23:09:09 +0200 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2020-09-12 23:09:09 +0200 |
commit | c9eaf71fe0e4da8ffa9487832d60743a43586b56 (patch) | |
tree | a1734afd1ce53ad9e69eb1a2d344df2210daf65b /packages/linux-kernel/patches/intel-qat | |
parent | 0b69d007405cacb680fc8a6130f2e4f9765ca977 (diff) | |
download | vyos-build-c9eaf71fe0e4da8ffa9487832d60743a43586b56.tar.gz vyos-build-c9eaf71fe0e4da8ffa9487832d60743a43586b56.zip |
Revert "Kernel: T2843: upgrade Kernel to v5.8.5"
This reverts commit 78c43c2078e292ac9b53d2d6a41a47466d283914.
Unfortunately we must revert the Kernel upgrade as there are two problematic
issues. One which is the break of ABI functionality with parted [1] and second
the internal cryptop API [2] which removed required literals for the build of
Intel QAT acceleration.
In the two weeks running 5.8 we still learned a lot - we experienced a
performance improvement of ~30% when doing NAT @ > 10GBit/s and also utilizing
the build in updated drivers for Intel NICs and WireGuard.
We are looking forward to the release of this years LTS kernel and we hope to
ship this in the final 1.3 release.
1: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.8.y&id=692d062655
2: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.5.y&id=d63007eb95
Diffstat (limited to 'packages/linux-kernel/patches/intel-qat')
-rw-r--r-- | packages/linux-kernel/patches/intel-qat/0001-API-adjustments.patch | 105 |
1 files changed, 0 insertions, 105 deletions
diff --git a/packages/linux-kernel/patches/intel-qat/0001-API-adjustments.patch b/packages/linux-kernel/patches/intel-qat/0001-API-adjustments.patch deleted file mode 100644 index 3bd600c5..00000000 --- a/packages/linux-kernel/patches/intel-qat/0001-API-adjustments.patch +++ /dev/null @@ -1,105 +0,0 @@ -From eaede51c4cff21f5d52982838d86c0c5918caa30 Mon Sep 17 00:00:00 2001 -From: Christian Poessinger <christian@poessinger.com> -Date: Sun, 30 Aug 2020 15:29:26 +0000 -Subject: [PATCH] API: adjust to Linux Kernel 5.8 API - -Change source code to be compatible with the latest Linux 5.8 Kernel API. -The change is not backwards compatible with the old API. - -Conditional checks like - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,5,0)) -should be added - ---- - .../drivers/crypto/qat/qat_common/adf_aer.c | 2 +- - .../drivers/crypto/qat/qat_common/adf_clock.c | 18 +++++++++--------- - .../linux/kernel_space/OsalCryptoInterface.c | 1 - - 3 files changed, 10 insertions(+), 11 deletions(-) - -diff --git a/quickassist/qat/drivers/crypto/qat/qat_common/adf_aer.c b/quickassist/qat/drivers/crypto/qat/qat_common/adf_aer.c -index 080f6de..e06667d 100644 ---- a/quickassist/qat/drivers/crypto/qat/qat_common/adf_aer.c -+++ b/quickassist/qat/drivers/crypto/qat/qat_common/adf_aer.c -@@ -303,7 +303,7 @@ static pci_ers_result_t adf_slot_reset(struct pci_dev *pdev) - pr_err("QAT: Can't find acceleration device\n"); - return PCI_ERS_RESULT_DISCONNECT; - } -- pci_cleanup_aer_uncorrect_error_status(pdev); -+ pci_aer_clear_nonfatal_status(pdev); - if (adf_dev_aer_schedule_reset(accel_dev, ADF_DEV_RESET_SYNC)) - return PCI_ERS_RESULT_DISCONNECT; - -diff --git a/quickassist/qat/drivers/crypto/qat/qat_common/adf_clock.c b/quickassist/qat/drivers/crypto/qat/qat_common/adf_clock.c -index 8785f67..be3d9b8 100644 ---- a/quickassist/qat/drivers/crypto/qat/qat_common/adf_clock.c -+++ b/quickassist/qat/drivers/crypto/qat/qat_common/adf_clock.c -@@ -113,7 +113,7 @@ int adf_clock_debugfs_add(struct adf_accel_dev *accel_dev) - #endif - EXPORT_SYMBOL_GPL(adf_clock_debugfs_add); - --static inline s64 timespec_to_us(const struct timespec *ts) -+static inline s64 timespec_to_us(const struct timespec64 *ts) - { - return ((s64)ts->tv_sec * USEC_PER_SEC + - (ts->tv_nsec + NSEC_PER_USEC / 2) / NSEC_PER_USEC); -@@ -129,10 +129,10 @@ static inline s64 timespec_to_us(const struct timespec *ts) - static int measure_clock(struct adf_accel_dev *accel_dev, - u32 *frequency) - { -- struct timespec ts1; -- struct timespec ts2; -- struct timespec ts3; -- struct timespec ts4; -+ struct timespec64 ts1; -+ struct timespec64 ts2; -+ struct timespec64 ts3; -+ struct timespec64 ts4; - u64 delta_us = 0; - u64 timestamp1 = 0; - u64 timestamp2 = 0; -@@ -143,13 +143,13 @@ static int measure_clock(struct adf_accel_dev *accel_dev, - return -EIO; - - do { -- getnstimeofday(&ts1); -+ ktime_get_real_ts64(&ts1); - if (adf_get_fw_timestamp(accel_dev, ×tamp1)) { - dev_err(&GET_DEV(accel_dev), - "Failed to get fw timestamp\n"); - return -EIO; - } -- getnstimeofday(&ts2); -+ ktime_get_real_ts64(&ts2); - delta_us = timespec_to_us(&ts2) - timespec_to_us(&ts1); - } while (delta_us > MEASURE_CLOCK_DELTA_THRESHOLD && - ++tries < MEASURE_CLOCK_RETRIES); -@@ -162,13 +162,13 @@ static int measure_clock(struct adf_accel_dev *accel_dev, - - tries = 0; - do { -- getnstimeofday(&ts3); -+ ktime_get_real_ts64(&ts3); - if (adf_get_fw_timestamp(accel_dev, ×tamp2)) { - dev_err(&GET_DEV(accel_dev), - "Failed to get fw timestamp\n"); - return -EIO; - } -- getnstimeofday(&ts4); -+ ktime_get_real_ts64(&ts4); - delta_us = timespec_to_us(&ts4) - timespec_to_us(&ts3); - } while (delta_us > MEASURE_CLOCK_DELTA_THRESHOLD && - ++tries < MEASURE_CLOCK_RETRIES); -diff --git a/quickassist/utilities/osal/src/linux/kernel_space/OsalCryptoInterface.c b/quickassist/utilities/osal/src/linux/kernel_space/OsalCryptoInterface.c -index 96d75cc..1f05e90 100644 ---- a/quickassist/utilities/osal/src/linux/kernel_space/OsalCryptoInterface.c -+++ b/quickassist/utilities/osal/src/linux/kernel_space/OsalCryptoInterface.c -@@ -66,7 +66,6 @@ - - #include "Osal.h" - #include <linux/crypto.h> --#include <linux/cryptohash.h> - #include <linux/version.h> - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29)) - #include <crypto/internal/hash.h> --- -2.20.1 |