Date: Tue, 16 May 2023 04:11:03 GMT From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: 13e15ac4990c - stable/13 - smp_topo(): correct allocation sizes for trivial topologies Message-ID: <202305160411.34G4B3Qg002014@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=13e15ac4990ca2f725ea10c1d9f74398b737ccc9 commit 13e15ac4990ca2f725ea10c1d9f74398b737ccc9 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2023-05-09 15:08:22 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2023-05-16 04:03:38 +0000 smp_topo(): correct allocation sizes for trivial topologies (cherry picked from commit 361c8f75a61832d9aa3dd4c589a0220f3467466f) --- sys/kern/subr_smp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/kern/subr_smp.c b/sys/kern/subr_smp.c index 8d3e398d6b54..fafdc5b65cab 100644 --- a/sys/kern/subr_smp.c +++ b/sys/kern/subr_smp.c @@ -790,8 +790,8 @@ smp_topo_1level(int share, int count, int flags) int i; cpu = 0; - top = smp_topo_alloc(1); packages = mp_ncpus / count; + top = smp_topo_alloc(1 + packages); top->cg_child = child = top + 1; top->cg_level = CG_SHARE_NONE; for (i = 0; i < packages; i++, child++) @@ -811,7 +811,8 @@ smp_topo_2level(int l2share, int l2count, int l1share, int l1count, int j; cpu = 0; - top = smp_topo_alloc(1); + top = smp_topo_alloc(1 + mp_ncpus / (l2count * l1count) + + mp_ncpus / l1count); l2g = top + 1; top->cg_child = l2g; top->cg_level = CG_SHARE_NONE;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202305160411.34G4B3Qg002014>