Date: Sat, 30 May 2026 17:11:38 -0700 From: Ahmad Khalifa <vexeduxr@freebsd.org> To: Kevin Bowling <kevin.bowling@kev009.com> Cc: A FreeBSD User <freebsd@walstatt-de.de>, src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2fa4bdd7f9e9 - main - edk2: enable static asserts for *INT64 alignment Message-ID: <CAMLT6uBhvWuRZOfCTq0S71oUgicFH9Wb4kZTqU6QSsyvoXbugg@mail.gmail.com> In-Reply-To: <CAK7dMtB55JcSCr%2BMB=SAbiSq3A-Aow9wyMamreopNBqab8oS4A@mail.gmail.com> References: <6a1a4f38.32b9d.5eb5f95e@gitrepo.freebsd.org> <20260530190827.15ba6ffa@thor.sb211.local> <CAMLT6uALWeur8d1ZYR=tA1c_SLQqc=K8nUFLuYrg=_vHOArpBw@mail.gmail.com> <CAK7dMtB55JcSCr%2BMB=SAbiSq3A-Aow9wyMamreopNBqab8oS4A@mail.gmail.com>
index | next in thread | previous in thread | raw e-mail
On Sun May 31, 2026 at 1:54 AM +0300, Kevin Bowling wrote: > On Sat, May 30, 2026 at 2:50 PM Ahmad Khalifa <vexeduxr@freebsd.org> wrote: >> >> On Sat May 30, 2026 at 8:09 PM +0300, A FreeBSD User wrote: >> > Am Tage des Herren Sat, 30 May 2026 02:45:12 +0000 >> > Ahmad Khalifa <vexeduxr@FreeBSD.org> schrieb: >> > >> >> The branch main has been updated by vexeduxr: >> >> >> >> URL: https://cgit.FreeBSD.org/src/commit/?id=2fa4bdd7f9e99698a6652db405c3165fdcd41c1d >> >> >> >> commit 2fa4bdd7f9e99698a6652db405c3165fdcd41c1d >> >> Author: Ahmad Khalifa <vexeduxr@FreeBSD.org> >> >> AuthorDate: 2026-05-30 02:40:58 +0000 >> >> Commit: Ahmad Khalifa <vexeduxr@FreeBSD.org> >> >> CommitDate: 2026-05-30 02:40:58 +0000 >> >> >> >> edk2: enable static asserts for *INT64 alignment >> >> >> >> The ia32 loader is now built with -malign-double, so these should pass. >> >> >> >> Differential Revision: https://reviews.freebsd.org/D55386 >> >> --- >> >> sys/contrib/edk2/Include/Base.h | 2 -- >> >> 1 file changed, 2 deletions(-) >> >> >> >> diff --git a/sys/contrib/edk2/Include/Base.h b/sys/contrib/edk2/Include/Base.h >> >> index 3ae798db8429..d3342c9a6ca2 100644 >> >> --- a/sys/contrib/edk2/Include/Base.h >> >> +++ b/sys/contrib/edk2/Include/Base.h >> >> @@ -841,10 +841,8 @@ STATIC_ASSERT (ALIGNOF (INT16) == sizeof (INT16), "Alignment of INT16 >> >> does not STATIC_ASSERT (ALIGNOF (UINT16) == sizeof (UINT16), "Alignment of UINT16 does not >> >> meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF (INT32) == sizeof >> >> (INT32), "Alignment of INT32 does not meet UEFI Specification Data Type requirements"); >> >> STATIC_ASSERT (ALIGNOF (UINT32) == sizeof (UINT32), "Alignment of UINT32 does not meet UEFI >> >> Specification Data Type requirements"); -#ifndef _STANDALONE STATIC_ASSERT (ALIGNOF (INT64) >> >> == sizeof (INT64), "Alignment of INT64 does not meet UEFI Specification Data Type >> >> requirements"); STATIC_ASSERT (ALIGNOF (UINT64) == sizeof (UINT64), "Alignment of UINT64 >> >> does not meet UEFI Specification Data Type requirements"); -#endif STATIC_ASSERT (ALIGNOF >> >> (CHAR8) == sizeof (CHAR8), "Alignment of CHAR8 does not meet UEFI Specification Data Type >> >> requirements"); STATIC_ASSERT (ALIGNOF (CHAR16) == sizeof (CHAR16), "Alignment of CHAR16 >> >> does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF (INTN) >> >> == sizeof (INTN), "Alignment of INTN does not meet UEFI Specification Data Type >> >> requirements"); >> >> >> > >> > The commit seems to disturb building process and gets rogue with: >> > [...] >> > In file included from /usr/src/sys/contrib/edk2/Include/Uefi/UefiBaseType.h:16: >> > /usr/src/sys/contrib/edk2/Include/Base.h:844:16: error: static assertion failed due to >> > requirement '_Alignof(long long) == sizeof(long long)': Alignment of INT64 does not meet UEFI >> > Specification Data Type requirements 844 | STATIC_ASSERT (ALIGNOF (INT64) == sizeof (INT64), >> > "Alignment of INT64 does not meet UEFI Specification Data Type requirements"); | >> > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/src/sys/contrib/edk2/Include/Base.h:778:24: note: >> > expanded from macro 'ALIGNOF' >> >> I can't reproduce with the defaults, do you have any loader related >> build options changed? > > Maybe a transient stale rebuild artifact, I was able to get through it > with -j1 somehow. Hmm, after building this a few times I do run into a race condition where the interpreter isn't done building before loader_ia32.efi. Is that what you ran into? Looks like the SUBDIR entries need to be re-ordered, that's a different issue from the one above though. > >> Also, can you tell which target this failed on? >> >> Thanks. >> >> > >> > >> > Regards >> > oh >>home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAMLT6uBhvWuRZOfCTq0S71oUgicFH9Wb4kZTqU6QSsyvoXbugg>
