Date: Mon, 15 Sep 2025 19:26:02 +0000 (UTC) From: "Bjoern A. Zeeb" <bz@FreeBSD.org> To: Warner Losh <imp@FreeBSD.org>, =?UTF-8?Q?Jean-S=C3=A9bastien_P=C3=A9dron?= <dumbbell@freebsd.org> Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 5e0a4859f28a - main - iwlwifi: Don't compile for gcc before 14 Message-ID: <p5327015-51o4-3r0r-1rq4-347r7q995677@SerrOFQ.bet> In-Reply-To: <202509150304.58F34BWJ035102@gitrepo.freebsd.org> References: <202509150304.58F34BWJ035102@gitrepo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 15 Sep 2025, Warner Losh wrote: > The branch main has been updated by imp: > > URL: https://cgit.FreeBSD.org/src/commit/?id=5e0a4859f28ad4869f7a73faf42debc355a370bf > > commit 5e0a4859f28ad4869f7a73faf42debc355a370bf > Author: Warner Losh <imp@FreeBSD.org> > AuthorDate: 2025-09-14 18:03:16 +0000 > Commit: Warner Losh <imp@FreeBSD.org> > CommitDate: 2025-09-15 03:03:45 +0000 > > iwlwifi: Don't compile for gcc before 14 > > gcc 13 and earlier don't have __builtin_bitcountg. The linux wifi kpi > uses this unconditionally. While in this one use, it might not be > needed, I opted to not compile iwlwifi when building gcc12 or 13 rather > than risk breaking it for everbody else. > > With this change gcc12 builds the kernel. Maybe this will stop jenkins > email for every commit I make. > > Sponsored by: Netflix > --- > sys/modules/Makefile | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/sys/modules/Makefile b/sys/modules/Makefile > index 5315d518afd8..f9fdbca78869 100644 > --- a/sys/modules/Makefile > +++ b/sys/modules/Makefile > @@ -576,7 +576,10 @@ _mlx5ib= mlx5ib > ${MACHINE_CPUARCH} == "i386" > _ena= ena > _gve= gve > +# gcc13 and earlier lack __builtin_bitcountg used by linux emulation (a) I beleive there is no __builtin_bitcountg but you mean __builtin_popcountg both here and in the commit message. (b) That was introduced in 7cbc4d875971860d941cc15d7f42e6cfeffbfe66 for DRM (c) There is no direct use in any LinuxKPI based wireless driver: % grep -r __builtin_popcountg sys/contrib/dev % (4) iwlwifi only uses HWEIGHT32, which was changed by the aforementioned commit in LinuxKPI. (5) Please do it right and in the place where it is actually defined to be used, in LinuxKPI, and not here as it can be easily fixed there with an #ifdef or otherwise as there were alternatives on the review if I remember correctly. I am Cc:ing dumbbell as well as he needed the change for DRM. PS: we also need to fix this in sys/sys at some point and save us some trouble. > +.if !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 140000) > _iwlwifi= iwlwifi > +.endif > _rtw88= rtw88 > _rtw89= rtw89 > _vmware= vmware > -- Bjoern A. Zeeb r15:7
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?p5327015-51o4-3r0r-1rq4-347r7q995677>