backport two bugfix patches from 5.10
This commit is contained in:
parent
007cb01a63
commit
94329052cd
@ -32,7 +32,7 @@
|
||||
|
||||
Name: kernel
|
||||
Version: 4.19.90
|
||||
Release: %{hulkrelease}.0245
|
||||
Release: %{hulkrelease}.0246
|
||||
Summary: Linux Kernel
|
||||
License: GPLv2
|
||||
URL: http://www.kernel.org/
|
||||
@ -850,7 +850,11 @@ fi
|
||||
|
||||
%changelog
|
||||
|
||||
* Fri Nov 17 2023 Luo Shengwei <luoshengwei@huawei.com> - 4.19.90-2311.3.0.0245
|
||||
* Fri Nov 17 2023 Zhou Kaiqi <zhoukaiqi@huawei.com> - 4.19.90-2311.3.0.0246
|
||||
- genirq: Increase the number of IRQ descriptors
|
||||
- irqchip: gic-v3: Collection table support muti pages
|
||||
|
||||
* Fri Nov 17 2023 Li Xiaodong <lixiaodong67@huawei.com> - 4.19.90-2311.3.0.0245
|
||||
- net: hns3: Fix unreasonable modifications caused by rollback extension ringparam parameters
|
||||
- net: hns3: Fix ethtool_ Ops&gen_ Improper modification of kabi changes caused by adding members in the ops structure
|
||||
- net: hns3: Fix Kabi issue caused by ptp introducing gettimex64()
|
||||
|
||||
@ -0,0 +1,40 @@
|
||||
From 182c9a59569b2f7adcd0473a1871a9899224d95d Mon Sep 17 00:00:00 2001
|
||||
From: wangwudi <wangwudi@hisilicon.com>
|
||||
Date: Mon, 12 Jun 2023 22:51:24 +0800
|
||||
Subject: [PATCH 1/2] irqchip: gic-v3: Collection table support muti pages
|
||||
|
||||
driver inclusion
|
||||
category: bugfix
|
||||
bugzilla: https://gitee.com/openeuler/kernel/issues/I7CX6S
|
||||
CVE: NA
|
||||
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
Only one page is allocated to the collection table.
|
||||
Recalculate the page number of collection table based on the number of
|
||||
CPUs.
|
||||
|
||||
Signed-off-by: wangwudi <wangwudi@hisilicon.com>
|
||||
Signed-off-by: Shengwei Luo <luoshengwei@huawei.com>
|
||||
---
|
||||
drivers/irqchip/irq-gic-v3-its.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
|
||||
index 73ce248da42c..46012ad327e7 100644
|
||||
--- a/drivers/irqchip/irq-gic-v3-its.c
|
||||
+++ b/drivers/irqchip/irq-gic-v3-its.c
|
||||
@@ -2180,6 +2180,10 @@ static int its_alloc_tables(struct its_node *its)
|
||||
indirect = its_parse_indirect_baser(its, baser, &order,
|
||||
ITS_MAX_VPEID_BITS);
|
||||
break;
|
||||
+ case GITS_BASER_TYPE_COLLECTION:
|
||||
+ indirect = its_parse_indirect_baser(its, baser, &order,
|
||||
+ order_base_2(num_possible_cpus()));
|
||||
+ break;
|
||||
}
|
||||
|
||||
err = its_setup_baser(its, baser, cache, shr, order, indirect);
|
||||
--
|
||||
2.27.0
|
||||
|
||||
@ -0,0 +1,64 @@
|
||||
From e5a8fe52b7e6506767f457f34ed237ae16f1d73f Mon Sep 17 00:00:00 2001
|
||||
From: Kunkun Jiang <jiangkunkun@huawei.com>
|
||||
Date: Wed, 7 Jun 2023 19:23:45 +0800
|
||||
Subject: [PATCH 2/2] genirq: Increase the number of IRQ descriptors
|
||||
|
||||
virt inclusion
|
||||
category: bugfix
|
||||
bugzilla: https://gitee.com/openeuler/kernel/issues/I7BQMW
|
||||
CVE: NA
|
||||
|
||||
-----------------------------------------------------------------
|
||||
|
||||
The default value of NR_IRQS is not sufficient to support GICv4.1
|
||||
features and ~56K LPIs. This parameter would be too small for certain
|
||||
server platforms where it has many IO devices and is capable of
|
||||
direct injection of vSGI and vLPI features.
|
||||
|
||||
Currently, maximum of 64 + 8192 (IRQ_BITMAP_BITS) IRQ descriptors
|
||||
are allowed. The vCPU creation fails after reaching count ~400 with
|
||||
kvm-arm.vgic_v4_enable=1.
|
||||
|
||||
This patch increases NR_IRQS to 1^19 to cover 56K LPIs and 262144
|
||||
vSGIs (16vPEs x 16).
|
||||
|
||||
------------------------------------------------------------------
|
||||
|
||||
Tips: This is a temporary fix[1], but it has been able to solve the
|
||||
problem. The latest upstream version[2] depends on the 'maple tree',
|
||||
which is inappropriately introduced to the current kernel.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
||||
Another Tips: According to Chao Liu and Chang Liao's suggestion,
|
||||
modifying IRQ_BITMAP_BITS can achieve the same effect with less
|
||||
impact. Compared with solution[2], solution[1] has a disadvantage:
|
||||
the memory foot print increases as the number of VMs increases.
|
||||
|
||||
Link: https://lore.kernel.org/linux-arm-kernel/20230104023738.1258925-1-sdonthineni@nvidia.com/ [1]
|
||||
Link: https://lore.kernel.org/all/20230519134902.1495562-1-sdonthineni@nvidia.com/#t [2]
|
||||
Signed-off-by: Shanker Donthineni <sdonthineni@nvidia.com>
|
||||
Signed-off-by: Chao Liu <liuchao173@huawei.com>
|
||||
Signed-off-by: Chang Liao <liaochang1@huawei.com>
|
||||
Signed-off-by: Kunkun Jiang <jiangkunkun@huawei.com>
|
||||
Signed-off-by: Shengwei Luo <luoshengwei@huawei.com>
|
||||
---
|
||||
kernel/irq/internals.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/kernel/irq/internals.h b/kernel/irq/internals.h
|
||||
index f29d6982b3ce..176daa503ad5 100644
|
||||
--- a/kernel/irq/internals.h
|
||||
+++ b/kernel/irq/internals.h
|
||||
@@ -12,7 +12,7 @@
|
||||
#include <linux/sched/clock.h>
|
||||
|
||||
#ifdef CONFIG_SPARSE_IRQ
|
||||
-# define IRQ_BITMAP_BITS (NR_IRQS + 8196)
|
||||
+# define IRQ_BITMAP_BITS (1 << 19)
|
||||
#else
|
||||
# define IRQ_BITMAP_BITS NR_IRQS
|
||||
#endif
|
||||
--
|
||||
2.27.0
|
||||
|
||||
@ -645,3 +645,5 @@ patches/0641-Fallback-ethtool-about-nla_-Modification-of-kabi-cha.patch
|
||||
patches/0642-net-hns3-Fix-Kabi-issue-caused-by-ptp-introducing-ge.patch
|
||||
patches/0643-net-hns3-Fix-ethtool_-Ops-gen_-Improper-modification.patch
|
||||
patches/0644-net-hns3-Fix-unreasonable-modifications-caused-by-ro.patch
|
||||
patches/0645-irqchip-gic-v3-Collection-table-support-muti-pages.patch
|
||||
patches/0646-genirq-Increase-the-number-of-IRQ-descriptors.patch
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user