release 4.19.90-2311.2.0

This commit is contained in:
Xiaodong Li 2023-11-14 14:27:24 +08:00
parent 3d18f8428a
commit fa27e5b533
3 changed files with 113 additions and 35 deletions

2
SOURCE
View File

@ -1 +1 @@
4.19.90-2311.1.0 4.19.90-2311.2.0

View File

@ -12,7 +12,7 @@
%global KernelVer %{version}-%{release}.%{_target_cpu} %global KernelVer %{version}-%{release}.%{_target_cpu}
%global hulkrelease 2311.1.0 %global hulkrelease 2311.2.0
%define with_patch 1 %define with_patch 1
@ -32,7 +32,7 @@
Name: kernel Name: kernel
Version: 4.19.90 Version: 4.19.90
Release: %{hulkrelease}.0240 Release: %{hulkrelease}.0241
Summary: Linux Kernel Summary: Linux Kernel
License: GPLv2 License: GPLv2
URL: http://www.kernel.org/ URL: http://www.kernel.org/
@ -849,6 +849,72 @@ fi
%endif %endif
%changelog %changelog
* TUE Nov 14 2023 Li Xiaodong <lixiaodong67@huawei.com> - 4.19.90-2311.2.0.0241
- !2793 handle uninitialized numa nodes gracefully.
- !2789 linux-4.19.y inclusion
- arch/x86/mm/numa: Do not initialize nodes twice
- mm: handle uninitialized numa nodes gracefully
- mm, memory_hotplug: make arch_alloc_nodedata independent on CONFIG_MEMORY_HOTPLUG
- !2713 Fix netfilter conntrack
- !2651 sched/membarrier: fix missing local execution of ipi_sync_rq_state()
- tcp: fix delayed ACKs for MSS boundary condition
- tcp: fix quick-ack counting to count actual ACKs of new data
- ipv4, ipv6: Fix handling of transhdrlen in __ip{,6}_append_data()
- team: fix null-ptr-deref when team device type is changed
- af_unix: Fix data race around sk->sk_err.
- af_unix: Fix data-races around sk->sk_shutdown.
- af_unix: Fix data-race around unix_tot_inflight.
- af_unix: Fix data-races around user->unix_inflight.
- net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr
- net: read sk->sk_family once in sk_mc_loop()
- skbuff: skb_segment, Call zero copy functions before using skbuff frags
- igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU
- tcp: tcp_enter_quickack_mode() should be static
- net: Avoid address overwrite in kernel_connect
- md/raid1: fix error: ISO C90 forbids mixed declarations
- md: raid1: fix potential OOB in raid1_remove_disk()
- ACPICA: Add AML_NO_OPERAND_RESOLVE flag to Timer
- autofs: fix memory leak of waitqueues in autofs_catatonic_mode
- pstore/ram: Check start of empty przs during init
- scsi: iscsi: Add strlen() check in iscsi_if_set{_host}_param()
- fs: Fix error checking for d_hash_and_lookup()
- !2767 crypto: hisilicon/qm - alloc reserve buffer to set and get xqc
- crypto: hisilicon/qm - alloc reserve buffer to set and get xqc
- !2760 fs: lockd: avoid possible wrong NULL parameter
- !2164 Net: ethernet: Support 3snic 3s9xx network card
- !2605 add CONFIG_NGBE for Wangxun 1G NIC for aarch64
- !1873 [openEuler-1.0-LTS] Add Phytium hda driver support
- !2564 [openEuler-1.0-LTS] Add Phytium i2c driver support
- !2636 kernel/trace: Fix do not unregister tracepoints when register sched_migrate_task fail
- fs: lockd: avoid possible wrong NULL parameter
- !2754 Sync LTS patches for openEuler-1.0-LTS
- !2758 crypto: hisilicon - qm obtain the mailbox config at one time
- crypto: hisilicon - qm obtain the mailbox config at one time
- regmap: rbtree: Fix wrong register marked as in-cache when creating new node
- regmap: rbtree: Use alloc_flags for memory allocations
- !2730 PCI/IOV: Add pci_sriov_numvfs_lock to support enable pci sriov concurrently
- !2722 net: sched: sch_qfq: Use non-work-conserving warning handler
- !2650 sched/cpuacct: Fix charge cpuacct.usage_sys
- PCI/IOV: Add pci_sriov_numvfs_lock to support enable pci sriov concurrently
- net: sched: sch_qfq: Use non-work-conserving warning handler
- arm64: config: add CONFIG_NGBE for Wangxun 1G NIC
- netfilter: conntrack: fix infinite loop on rmmod
- netfilter: conntrack: do not auto-delete clash entries on reply
- netfilter: conntrack: allow insertion of clashing entries
- netfilter: conntrack: split resolve_clash function
- netfilter: conntrack: place confirm-bit setting in a helper
- netfilter: conntrack: remove two args from resolve_clash
- netfilter: conntrack: tell compiler to not inline nf_ct_resolve_clash
- sched/membarrier: fix missing local execution of ipi_sync_rq_state()
- sched/cpuacct: Fix charge cpuacct.usage_sys
- kernel/trace: Fix do not unregister tracepoints when register sched_migrate_task fail
- hda: add phytium hda driver
- hda: add phytium hda driver document
- i2c: add Phytium i2c driver
- i2c: add phytium i2c driver DT binding docs
- Net: ethernet: Support 3snic 3s9xx network card
* Mon Nov 13 2023 mingqian218472 <hangmingqian.zhang@huawei.com> - 4.19.90-2311.1.0.0240 * Mon Nov 13 2023 mingqian218472 <hangmingqian.zhang@huawei.com> - 4.19.90-2311.1.0.0240
- Add feature for nfs client support multipath - Add feature for nfs client support multipath

View File

@ -1,8 +1,8 @@
From 8494941e651ce8968813dbd71ce55a3eb86ad7b5 Mon Sep 17 00:00:00 2001 From f28828d9b8b7171aa25f83cd9db9a95493db7c81 Mon Sep 17 00:00:00 2001
From: zhongkeyi <zhongkeyi1@huawei.com> From: lauyarn <liuyang645@huawei.com>
Date: Fri, 27 Oct 2023 15:11:59 +0800 Date: Tue, 14 Nov 2023 11:25:22 +0800
Subject: [PATCH] crypto: hisilicon - fix different versions of devices driver Subject: [PATCH] Subject: [PATCH] crypto: hisilicon - fix different versions
compatibility issue of devices driver compatibility issue
driver inclusion driver inclusion
category: feature category: feature
@ -15,15 +15,15 @@ In order to be compatible with devices of different versions, V1 in the
accelerator driver is now isolated, and other versions are the previous accelerator driver is now isolated, and other versions are the previous
V2 processing flow. V2 processing flow.
Signed-off-by: zhongkeyi <zhongkeyi1@huawei.com> Signed-off-by: Liu Yang <liuyang645@huawei.com>
--- ---
drivers/crypto/hisilicon/hpre/hpre_main.c | 2 +- drivers/crypto/hisilicon/hpre/hpre_main.c | 2 +-
drivers/crypto/hisilicon/qm.c | 70 +++++++++-------------- drivers/crypto/hisilicon/qm.c | 70 +++++++++--------------
drivers/crypto/hisilicon/qm.h | 14 ++--- drivers/crypto/hisilicon/qm.h | 14 ++---
drivers/crypto/hisilicon/rde/rde_main.c | 12 +--- drivers/crypto/hisilicon/rde/rde_main.c | 12 +---
drivers/crypto/hisilicon/sec2/sec_main.c | 12 +--- drivers/crypto/hisilicon/sec2/sec_main.c | 12 +---
drivers/crypto/hisilicon/zip/zip_main.c | 12 +--- drivers/crypto/hisilicon/zip/zip_main.c | 17 ++----
6 files changed, 37 insertions(+), 85 deletions(-) 6 files changed, 41 insertions(+), 86 deletions(-)
diff --git a/drivers/crypto/hisilicon/hpre/hpre_main.c b/drivers/crypto/hisilicon/hpre/hpre_main.c diff --git a/drivers/crypto/hisilicon/hpre/hpre_main.c b/drivers/crypto/hisilicon/hpre/hpre_main.c
index cbe8ea438fd2..8c71353cd4b5 100644 index cbe8ea438fd2..8c71353cd4b5 100644
@ -39,10 +39,10 @@ index cbe8ea438fd2..8c71353cd4b5 100644
qm->ctrl_q_num = HPRE_QUEUE_NUM_V2; qm->ctrl_q_num = HPRE_QUEUE_NUM_V2;
diff --git a/drivers/crypto/hisilicon/qm.c b/drivers/crypto/hisilicon/qm.c diff --git a/drivers/crypto/hisilicon/qm.c b/drivers/crypto/hisilicon/qm.c
index f2706dc0d55e..5562c63bfeeb 100644 index 25bb24b4c131..398d5bab439e 100644
--- a/drivers/crypto/hisilicon/qm.c --- a/drivers/crypto/hisilicon/qm.c
+++ b/drivers/crypto/hisilicon/qm.c +++ b/drivers/crypto/hisilicon/qm.c
@@ -682,7 +682,7 @@ static int qm_irq_register(struct hisi_qm *qm) @@ -814,7 +814,7 @@ static int qm_irq_register(struct hisi_qm *qm)
if (ret) if (ret)
return ret; return ret;
@ -51,7 +51,7 @@ index f2706dc0d55e..5562c63bfeeb 100644
ret = request_irq(pci_irq_vector(pdev, QM_AEQ_EVENT_IRQ_VECTOR), ret = request_irq(pci_irq_vector(pdev, QM_AEQ_EVENT_IRQ_VECTOR),
qm_aeq_irq, IRQF_SHARED, qm->dev_name, qm); qm_aeq_irq, IRQF_SHARED, qm->dev_name, qm);
if (ret) if (ret)
@@ -713,13 +713,12 @@ static void qm_irq_unregister(struct hisi_qm *qm) @@ -845,13 +845,12 @@ static void qm_irq_unregister(struct hisi_qm *qm)
free_irq(pci_irq_vector(pdev, QM_EQ_EVENT_IRQ_VECTOR), qm); free_irq(pci_irq_vector(pdev, QM_EQ_EVENT_IRQ_VECTOR), qm);
@ -70,7 +70,7 @@ index f2706dc0d55e..5562c63bfeeb 100644
} }
static void qm_init_qp_status(struct hisi_qp *qp) static void qm_init_qp_status(struct hisi_qp *qp)
@@ -741,36 +740,26 @@ static void qm_vft_data_cfg(struct hisi_qm *qm, enum vft_type type, u32 base, @@ -873,36 +872,26 @@ static void qm_vft_data_cfg(struct hisi_qm *qm, enum vft_type type, u32 base,
if (number > 0) { if (number > 0) {
switch (type) { switch (type) {
case SQC_VFT: case SQC_VFT:
@ -111,25 +111,25 @@ index f2706dc0d55e..5562c63bfeeb 100644
} }
break; break;
} }
@@ -1827,7 +1816,7 @@ static int qm_sq_ctx_cfg(struct hisi_qp *qp, int qp_id, int pasid) @@ -1850,7 +1839,7 @@ static int qm_sq_ctx_cfg(struct hisi_qp *qp, int qp_id, int pasid)
if (ver == QM_HW_V1) { if (ver == QM_HW_V1) {
sqc->dw3 = cpu_to_le32(QM_MK_SQC_DW3_V1(0, 0, 0, qm->sqe_size)); sqc.dw3 = cpu_to_le32(QM_MK_SQC_DW3_V1(0, 0, 0, qm->sqe_size));
sqc->w8 = cpu_to_le16(QM_Q_DEPTH - 1); sqc.w8 = cpu_to_le16(QM_Q_DEPTH - 1);
- } else if (ver == QM_HW_V2) { - } else if (ver == QM_HW_V2) {
+ } else { + } else {
sqc->dw3 = cpu_to_le32(QM_MK_SQC_DW3_V2(qm->sqe_size)); sqc.dw3 = cpu_to_le32(QM_MK_SQC_DW3_V2(qm->sqe_size));
sqc->w8 = 0; /* rand_qc */ sqc.w8 = 0; /* rand_qc */
} }
@@ -1867,7 +1856,7 @@ static int qm_cq_ctx_cfg(struct hisi_qp *qp, int qp_id, int pasid) @@ -1873,7 +1862,7 @@ static int qm_cq_ctx_cfg(struct hisi_qp *qp, int qp_id, int pasid)
cqc->dw3 = cpu_to_le32(QM_MK_CQC_DW3_V1(0, 0, 0, cqc.dw3 = cpu_to_le32(QM_MK_CQC_DW3_V1(0, 0, 0,
QM_QC_CQE_SIZE)); QM_QC_CQE_SIZE));
cqc->w8 = cpu_to_le16(QM_Q_DEPTH - 1); cqc.w8 = cpu_to_le16(QM_Q_DEPTH - 1);
- } else if (ver == QM_HW_V2) { - } else if (ver == QM_HW_V2) {
+ } else { + } else {
cqc->dw3 = cpu_to_le32(QM_MK_CQC_DW3_V2(QM_QC_CQE_SIZE)); cqc.dw3 = cpu_to_le32(QM_MK_CQC_DW3_V2(QM_QC_CQE_SIZE));
cqc->w8 = 0; /* rand_qc */ cqc.w8 = 0; /* rand_qc */
} }
@@ -2104,14 +2093,13 @@ static void hisi_qm_cache_wb(struct hisi_qm *qm) @@ -2094,14 +2083,13 @@ static void hisi_qm_cache_wb(struct hisi_qm *qm)
{ {
unsigned int val; unsigned int val;
@ -151,7 +151,7 @@ index f2706dc0d55e..5562c63bfeeb 100644
} }
int hisi_qm_get_free_qp_num(struct hisi_qm *qm) int hisi_qm_get_free_qp_num(struct hisi_qm *qm)
@@ -2212,12 +2200,12 @@ static int hisi_qm_uacce_mmap(struct uacce_queue *q, @@ -2202,12 +2190,12 @@ static int hisi_qm_uacce_mmap(struct uacce_queue *q,
switch (qfr->type) { switch (qfr->type) {
case UACCE_QFRT_MMIO: case UACCE_QFRT_MMIO:
@ -168,7 +168,7 @@ index f2706dc0d55e..5562c63bfeeb 100644
return -EINVAL; return -EINVAL;
} }
@@ -2691,16 +2679,10 @@ int hisi_qm_init(struct hisi_qm *qm) @@ -2743,16 +2731,10 @@ int hisi_qm_init(struct hisi_qm *qm)
struct device *dev = &pdev->dev; struct device *dev = &pdev->dev;
int ret; int ret;
@ -187,7 +187,7 @@ index f2706dc0d55e..5562c63bfeeb 100644
if (qm->use_uacce) { if (qm->use_uacce) {
dev_info(dev, "qm register to uacce\n"); dev_info(dev, "qm register to uacce\n");
@@ -2720,7 +2702,7 @@ int hisi_qm_init(struct hisi_qm *qm) @@ -2772,7 +2754,7 @@ int hisi_qm_init(struct hisi_qm *qm)
goto err_irq_register; goto err_irq_register;
mutex_init(&qm->mailbox_lock); mutex_init(&qm->mailbox_lock);
@ -197,7 +197,7 @@ index f2706dc0d55e..5562c63bfeeb 100644
ret = hisi_qm_get_vft(qm, &qm->qp_base, &qm->qp_num); ret = hisi_qm_get_vft(qm, &qm->qp_base, &qm->qp_num);
if (ret) if (ret)
diff --git a/drivers/crypto/hisilicon/qm.h b/drivers/crypto/hisilicon/qm.h diff --git a/drivers/crypto/hisilicon/qm.h b/drivers/crypto/hisilicon/qm.h
index d7d23d1ec34c..211689579161 100644 index 9f5e440d7396..89c0977ac81f 100644
--- a/drivers/crypto/hisilicon/qm.h --- a/drivers/crypto/hisilicon/qm.h
+++ b/drivers/crypto/hisilicon/qm.h +++ b/drivers/crypto/hisilicon/qm.h
@@ -114,6 +114,7 @@ enum qm_hw_ver { @@ -114,6 +114,7 @@ enum qm_hw_ver {
@ -208,7 +208,7 @@ index d7d23d1ec34c..211689579161 100644
}; };
enum qm_fun_type { enum qm_fun_type {
@@ -385,7 +386,6 @@ static inline int q_num_set(const char *val, const struct kernel_param *kp, @@ -398,7 +399,6 @@ static inline int q_num_set(const char *val, const struct kernel_param *kp,
struct pci_dev *pdev = pci_get_device(PCI_VENDOR_ID_HUAWEI, struct pci_dev *pdev = pci_get_device(PCI_VENDOR_ID_HUAWEI,
device, NULL); device, NULL);
u32 n, q_num; u32 n, q_num;
@ -216,7 +216,7 @@ index d7d23d1ec34c..211689579161 100644
int ret; int ret;
if (!val) if (!val)
@@ -396,17 +396,10 @@ static inline int q_num_set(const char *val, const struct kernel_param *kp, @@ -409,17 +409,10 @@ static inline int q_num_set(const char *val, const struct kernel_param *kp,
pr_info("No device found currently, suppose queue number is %d\n", pr_info("No device found currently, suppose queue number is %d\n",
q_num); q_num);
} else { } else {
@ -236,7 +236,7 @@ index d7d23d1ec34c..211689579161 100644
} }
ret = kstrtou32(val, 10, &n); ret = kstrtou32(val, 10, &n);
@@ -474,6 +467,7 @@ static inline int hisi_qm_pre_init(struct hisi_qm *qm, @@ -487,6 +480,7 @@ static inline int hisi_qm_pre_init(struct hisi_qm *qm,
switch (pdev->revision) { switch (pdev->revision) {
case QM_HW_V1: case QM_HW_V1:
case QM_HW_V2: case QM_HW_V2:
@ -295,7 +295,7 @@ index 0f32dcb69e12..2f8dd6c30cb1 100644
ret = qm->err_ini.set_usr_domain_cache(qm); ret = qm->err_ini.set_usr_domain_cache(qm);
if (ret) if (ret)
diff --git a/drivers/crypto/hisilicon/zip/zip_main.c b/drivers/crypto/hisilicon/zip/zip_main.c diff --git a/drivers/crypto/hisilicon/zip/zip_main.c b/drivers/crypto/hisilicon/zip/zip_main.c
index 1ca51793e26a..ce931af1007b 100644 index 1ca51793e26a..34c62e990602 100644
--- a/drivers/crypto/hisilicon/zip/zip_main.c --- a/drivers/crypto/hisilicon/zip/zip_main.c
+++ b/drivers/crypto/hisilicon/zip/zip_main.c +++ b/drivers/crypto/hisilicon/zip/zip_main.c
@@ -790,18 +790,10 @@ static int hisi_zip_pf_probe_init(struct hisi_qm *qm) @@ -790,18 +790,10 @@ static int hisi_zip_pf_probe_init(struct hisi_qm *qm)
@ -319,6 +319,18 @@ index 1ca51793e26a..ce931af1007b 100644
ret = qm->err_ini.set_usr_domain_cache(qm); ret = qm->err_ini.set_usr_domain_cache(qm);
if (ret) if (ret)
@@ -818,7 +810,10 @@ static int hisi_zip_qm_pre_init(struct hisi_qm *qm, struct pci_dev *pdev)
{
int ret;
- qm->algs = "zlib\ngzip\nxts(sm4)\nxts(aes)\n";
+ if (pdev->revision >= QM_HW_V3)
+ qm->algs = "zlib\ngzip\nxts(sm4)\nxts(aes)\ndeflate\n";
+ else
+ qm->algs = "zlib\ngzip\nxts(sm4)\nxts(aes)\n";
qm->uacce_mode = uacce_mode;
qm->pdev = pdev;
ret = hisi_qm_pre_init(qm, pf_q_num, HZIP_PF_DEF_Q_BASE);
-- --
2.27.0 2.33.0