HomeFreeBSD

gic_acpi: Limit the number of CPUs to GIC_MAXCPU

Description

gic_acpi: Limit the number of CPUs to GIC_MAXCPU

madt_table_data contains an array of pointers for each CPU and was
allocated on the stack. If MAXCPU is raised to a sufficiently large
value this can overflow the kernel stack. Cap the stack growth by
using GIC_MAXCPU instead as for other parts of the gicv1/v2 driver in
commit a0e20c0ded1a.

Suggested by: andrew
Reviewed by: andrew, emaste
Obtained from: CheriBSD
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D41800

(cherry picked from commit d0af08c4ba3e400049d246d72401ce36d3bee98a)
(cherry picked from commit b7f6b86ee7e49718ab8bf74f7a33fa8cda4d38dc)

Approved by: re (karels)

Details

Provenance
jhbAuthored on Sep 9 2023, 7:13 PM
Reviewer
andrew
Differential Revision
D41800: gic_acpi: Limit the number of CPUs to GIC_MAXCPU
Parents
rGc1e05a5e1a3e: virtio_random: Pipeline fetching the data
Branches
Unknown
Tags
Unknown