Date: Tue, 9 May 2023 11:52:38 +0200 From: Mateusz Guzik <mjguzik@gmail.com> To: =?UTF-8?Q?Corvin_K=C3=B6hne?= <corvink@freebsd.org> Cc: Ed Maste <emaste@freebsd.org>, src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 76887e84be97 - main - cpuset: increase userland maximum size to 1024 Message-ID: <CAGudoHGU7538je-By68kLoQjzjbfJU6ZaRxR68xOwzPPWzAUNA@mail.gmail.com> In-Reply-To: <692e003e4b684c093b16048a4e12cc2dd8fc1fe0.camel@FreeBSD.org> References: <202305081826.348IQm9N040108@gitrepo.freebsd.org> <0dadaa17917629e3399fe9acbab17eb60b63575d.camel@FreeBSD.org> <2f47388ab07eaeb820344e928adb96ff6f7a5916.camel@FreeBSD.org> <692e003e4b684c093b16048a4e12cc2dd8fc1fe0.camel@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 5/9/23, Corvin K=C3=B6hne <corvink@freebsd.org> wrote: > On Tue, 2023-05-09 at 09:43 +0200, Corvin K=C3=B6hne wrote: >> On Tue, 2023-05-09 at 08:59 +0200, Corvin K=C3=B6hne wrote: >> > On Mon, 2023-05-08 at 18:26 +0000, Ed Maste wrote: >> > > The branch main has been updated by emaste: >> > > >> > > URL: >> > > https://cgit.FreeBSD.org/src/commit/?id=3D76887e84be975698b14699d7d0= dfb157d73e9990 >> > > >> > > commit 76887e84be975698b14699d7d0dfb157d73e9990 >> > > Author: Ed Maste <emaste@FreeBSD.org> >> > > AuthorDate: 2023-05-02 20:57:12 +0000 >> > > Commit: Ed Maste <emaste@FreeBSD.org> >> > > CommitDate: 2023-05-08 18:25:15 +0000 >> > > >> > > cpuset: increase userland maximum size to 1024 >> > > >> > > Hardware with more than 256 CPU cores is now available and >> > > will >> > > become >> > > increasingly common. Bump CPU_MAXSIZE (used for userland >> > > cpuset_t >> > > sizing) to 1024 to define the ABI for FreeBSD 14. >> > > >> > > PR: 269572, 271213 [exp-run] >> > > Reviewed by: mjg, jhb >> > > Relnotes: yes >> > > Sponsored by: The FreeBSD Foundation >> > > Differential Revision: https://reviews.freebsd.org/D39941 >> > > --- >> > > sys/sys/_cpuset.h | 2 +- >> > > 1 file changed, 1 insertion(+), 1 deletion(-) >> > > >> > > diff --git a/sys/sys/_cpuset.h b/sys/sys/_cpuset.h >> > > index b75ee595da3c..676f9855f384 100644 >> > > --- a/sys/sys/_cpuset.h >> > > +++ b/sys/sys/_cpuset.h >> > > @@ -40,7 +40,7 @@ >> > > #define CPU_SETSIZE MAXCPU >> > > #endif >> > > >> > > -#define CPU_MAXSIZE 256 >> > > +#define CPU_MAXSIZE 1024 >> > > >> > > #ifndef CPU_SETSIZE >> > > #define CPU_SETSIZE CPU_MAXSIZE >> > >> > Hi Ed, >> > >> > this somehow breaks bhyve on my system. It immediately exits with >> > "vm_run error -1" on startup. >> > >> > >> >> Setting MAXCPU [1] to 1024 as well, solves the issue. Not sure if >> it's >> a regression of your commit or a bhyve bug. >> >> [1] >> https://github.com/freebsd/freebsd-src/blob/20d8d9809a8c0a3ddd1d0156e77e= c53a1ed95747/sys/amd64/include/param.h#L68 >> >> > > vmm kernel module and bhyve userland are sharing a cpuset_t. So, this > commit introduces a mismatch in the ioctl signature of VM_RUN. Any > advice how to fix this properly, would be appreciated. > > [1] > https://github.com/freebsd/freebsd-src/blob/c543e09f1f8ef98f201f7dd3f34ae= 023d61dfa83/sys/amd64/include/vmm.h#L759 > > > On one hand this really should not be a part of the abi (you could have a pointer to cpuset and a a var stating the size). On the other hand, i suspect the least problematic long term solution is to introduce usercpuset_t (or whatever the name) and have a conversion func on import. This would still mean you need a kernel and user variant of the vm_exit struct. --=20 Mateusz Guzik <mjguzik gmail.com>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGudoHGU7538je-By68kLoQjzjbfJU6ZaRxR68xOwzPPWzAUNA>