Date: Sun, 3 Jul 2016 12:37:27 -0700 From: Adrian Chadd <adrian@freebsd.org> To: Nathan Whitehorn <nwhitehorn@freebsd.org> Cc: outro pessoa <outro.pessoa@gmail.com>, "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org> Subject: Re: Review request: sparse CPU ID maps Message-ID: <CAJ-Vmon4kRNc5LiwibtiPi_FQ1v5w_MQEjP%2BOfcC7J74iTKs0A@mail.gmail.com> In-Reply-To: <5345fb94-91b8-5019-037e-d4825a694cfd@freebsd.org> References: <57761101.3030101@freebsd.org> <CAD9=5Xw-MmVVSSo6nRvSRvGaLbd1Z1YRyVKyF9JfmucNKMGBZg@mail.gmail.com> <5345fb94-91b8-5019-037e-d4825a694cfd@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2 July 2016 at 17:08, Nathan Whitehorn <nwhitehorn@freebsd.org> wrote: > A reasonable first pass at checking for this kind of bug is doing grep -lR > '< mp_ncpus'. Running that on sys/arm and sys/arm64 shows the following > files: > arm/mv/armadaxp/armadaxp_mp.c > arm/include/counter.h > arm/broadcom/bcm2835/bcm2836.c > arm/broadcom/bcm2835/bcm2836_mp.c > arm/freescale/imx/imx6_mp.c > arm/allwinner/aw_mp.c > arm/rockchip/rk30xx_mp.c > arm/amlogic/aml8726/aml8726_mp.c > arm/samsung/exynos/exynos5_mp.c > arm/arm/mp_machdep.c > arm/nvidia/tegra124/tegra124_mp.c > arm64/include/counter.h > arm64/arm64/gic_v3.c > arm64/arm64/gic_v3_its.c > arm64/arm64/gicv3_its.c > > All of them should, in some sense, be CPU_FOREACH(), but it may not matter. > For example, it may not be possible to have sparse CPU IDs on some or all of > those SOCs. At least the generic ones (counter, mp_machdep.c, gic (why are > there both gic_v3_its.c and gicv3_its.c?)) should be changed, I think. > -Nathan I think converting all the users over to the CPU_FOREACH thing is the right way to go, even if the SOC doesn't require it. People do bring up new systems by copy/pasta'ing an existing similar system, so we're best served by having all the consumers migrated. But, I'd do it in head/12. Early in head/12. :-P -adrian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmon4kRNc5LiwibtiPi_FQ1v5w_MQEjP%2BOfcC7J74iTKs0A>