From f93979b5bfc70b38ed793c704e7c7006dfd6145e Mon Sep 17 00:00:00 2001 From: wangwudi Date: Mon, 12 Jun 2023 22:51:24 +0800 Subject: [PATCH] irqchip: gic-v3: Collection table support muti pages ANBZ: #29250 commit b0e9b902a00a81bbd90145b2a169ab92650c073a openeuler driver inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I9J9J6 CVE: NA -------------------------------------------------------------------------- Only one page is allocated to the collection table. Recalculate the page number of collection table based on the number of CPUs. Fixes: 1ac19ca6bf97 ("irqchip: GICv3: ITS: tables allocators") Signed-off-by: wangwudi Signed-off-by: Jie Liu Signed-off-by: zhangxinghao --- 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 99488ff0bb13..6c121ec28f44 100644 --- a/drivers/irqchip/irq-gic-v3-its.c +++ b/drivers/irqchip/irq-gic-v3-its.c @@ -2645,6 +2645,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); -- Gitee