From fa27e5b533ab6675f563edc9eb8dcee14b58c2c8 Mon Sep 17 00:00:00 2001 From: Xiaodong Li Date: Tue, 14 Nov 2023 14:27:24 +0800 Subject: [PATCH] release 4.19.90-2311.2.0 --- SOURCE | 2 +- kernel.spec | 70 ++++++++++++++++- ...-fix-different-versions-of-devices-d.patch | 76 +++++++++++-------- 3 files changed, 113 insertions(+), 35 deletions(-) diff --git a/SOURCE b/SOURCE index d3134df..af573a8 100644 --- a/SOURCE +++ b/SOURCE @@ -1 +1 @@ -4.19.90-2311.1.0 +4.19.90-2311.2.0 diff --git a/kernel.spec b/kernel.spec index bc6b073..5725c98 100644 --- a/kernel.spec +++ b/kernel.spec @@ -12,7 +12,7 @@ %global KernelVer %{version}-%{release}.%{_target_cpu} -%global hulkrelease 2311.1.0 +%global hulkrelease 2311.2.0 %define with_patch 1 @@ -32,7 +32,7 @@ Name: kernel Version: 4.19.90 -Release: %{hulkrelease}.0240 +Release: %{hulkrelease}.0241 Summary: Linux Kernel License: GPLv2 URL: http://www.kernel.org/ @@ -849,6 +849,72 @@ fi %endif %changelog + +* TUE Nov 14 2023 Li Xiaodong - 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 - 4.19.90-2311.1.0.0240 - Add feature for nfs client support multipath diff --git a/patches/0020-crypto-hisilicon-fix-different-versions-of-devices-d.patch b/patches/0020-crypto-hisilicon-fix-different-versions-of-devices-d.patch index 8518037..534033a 100644 --- a/patches/0020-crypto-hisilicon-fix-different-versions-of-devices-d.patch +++ b/patches/0020-crypto-hisilicon-fix-different-versions-of-devices-d.patch @@ -1,8 +1,8 @@ -From 8494941e651ce8968813dbd71ce55a3eb86ad7b5 Mon Sep 17 00:00:00 2001 -From: zhongkeyi -Date: Fri, 27 Oct 2023 15:11:59 +0800 -Subject: [PATCH] crypto: hisilicon - fix different versions of devices driver - compatibility issue +From f28828d9b8b7171aa25f83cd9db9a95493db7c81 Mon Sep 17 00:00:00 2001 +From: lauyarn +Date: Tue, 14 Nov 2023 11:25:22 +0800 +Subject: [PATCH] Subject: [PATCH] crypto: hisilicon - fix different versions + of devices driver compatibility issue driver inclusion 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 V2 processing flow. -Signed-off-by: zhongkeyi +Signed-off-by: Liu Yang --- drivers/crypto/hisilicon/hpre/hpre_main.c | 2 +- drivers/crypto/hisilicon/qm.c | 70 +++++++++-------------- drivers/crypto/hisilicon/qm.h | 14 ++--- drivers/crypto/hisilicon/rde/rde_main.c | 12 +--- drivers/crypto/hisilicon/sec2/sec_main.c | 12 +--- - drivers/crypto/hisilicon/zip/zip_main.c | 12 +--- - 6 files changed, 37 insertions(+), 85 deletions(-) + drivers/crypto/hisilicon/zip/zip_main.c | 17 ++---- + 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 index cbe8ea438fd2..8c71353cd4b5 100644 @@ -39,10 +39,10 @@ index cbe8ea438fd2..8c71353cd4b5 100644 qm->ctrl_q_num = HPRE_QUEUE_NUM_V2; 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 +++ 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) return ret; @@ -51,7 +51,7 @@ index f2706dc0d55e..5562c63bfeeb 100644 ret = request_irq(pci_irq_vector(pdev, QM_AEQ_EVENT_IRQ_VECTOR), qm_aeq_irq, IRQF_SHARED, qm->dev_name, qm); 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); @@ -70,7 +70,7 @@ index f2706dc0d55e..5562c63bfeeb 100644 } 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) { switch (type) { case SQC_VFT: @@ -111,25 +111,25 @@ index f2706dc0d55e..5562c63bfeeb 100644 } 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) { - 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.dw3 = cpu_to_le32(QM_MK_SQC_DW3_V1(0, 0, 0, qm->sqe_size)); + sqc.w8 = cpu_to_le16(QM_Q_DEPTH - 1); - } else if (ver == QM_HW_V2) { + } else { - sqc->dw3 = cpu_to_le32(QM_MK_SQC_DW3_V2(qm->sqe_size)); - sqc->w8 = 0; /* rand_qc */ + sqc.dw3 = cpu_to_le32(QM_MK_SQC_DW3_V2(qm->sqe_size)); + sqc.w8 = 0; /* rand_qc */ } -@@ -1867,7 +1856,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, +@@ -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, 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 { - cqc->dw3 = cpu_to_le32(QM_MK_CQC_DW3_V2(QM_QC_CQE_SIZE)); - cqc->w8 = 0; /* rand_qc */ + cqc.dw3 = cpu_to_le32(QM_MK_CQC_DW3_V2(QM_QC_CQE_SIZE)); + 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; @@ -151,7 +151,7 @@ index f2706dc0d55e..5562c63bfeeb 100644 } 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) { case UACCE_QFRT_MMIO: @@ -168,7 +168,7 @@ index f2706dc0d55e..5562c63bfeeb 100644 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; int ret; @@ -187,7 +187,7 @@ index f2706dc0d55e..5562c63bfeeb 100644 if (qm->use_uacce) { 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; 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); if (ret) 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 +++ b/drivers/crypto/hisilicon/qm.h @@ -114,6 +114,7 @@ enum qm_hw_ver { @@ -208,7 +208,7 @@ index d7d23d1ec34c..211689579161 100644 }; 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, device, NULL); u32 n, q_num; @@ -216,7 +216,7 @@ index d7d23d1ec34c..211689579161 100644 int ret; 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", q_num); } else { @@ -236,7 +236,7 @@ index d7d23d1ec34c..211689579161 100644 } 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) { case QM_HW_V1: case QM_HW_V2: @@ -295,7 +295,7 @@ index 0f32dcb69e12..2f8dd6c30cb1 100644 ret = qm->err_ini.set_usr_domain_cache(qm); if (ret) 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 +++ b/drivers/crypto/hisilicon/zip/zip_main.c @@ -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); 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