Date: Fri, 27 Apr 2018 19:49:16 +0200 From: Andre Albsmeier <Andre.Albsmeier@siemens.com> To: Dimitry Andric <dim@FreeBSD.org> Cc: Andre Albsmeier <Andre.Albsmeier@siemens.com>, FreeBSD Stable <freebsd-stable@freebsd.org> Subject: Re: gptboot broken when compiled with clang 6 and WITHOUT_LOADER_GELI -- clang 5 is OK Message-ID: <20180427174916.GA38967@bali> In-Reply-To: <1FDCF15C-E9FD-4746-9C89-F669EF4BA7C5@FreeBSD.org> References: <20180425165840.GA1330@bali> <1FDCF15C-E9FD-4746-9C89-F669EF4BA7C5@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 26-Apr-2018 at 11:55:19 +0200, Dimitry Andric wrote: > On 25 Apr 2018, at 18:58, Andre Albsmeier <Andre.Albsmeier@siemens.com> wrote: > > > > I have set up a new system disk for an i386 11.2-PRERELEASE box. I did the > > usual > > > > gpart create -s gpt $disk > > gpart add -t freebsd-boot -s 984 $disk > > gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 $disk > > ... > > > > thing, just to notice that the box wouldn't boot. It seems to hang where > > stage 2 should be run -- when the '\' should start spinning the screen > > turns white and the box hangs (tested on two machines, an Asus P5W and a > > Supermicro A2SAV). > > > > So I replaced gptboot on the new disk by the one from an older machine > > and everything was fine. I wanted to find out what is actually causing > > the issue and recompiled /usr/src/stand after updating the old sources > > in several steps. > > > > Eventually it turned out that it depends on the compiler. When compiling > > the latest /usr/src/stand with clang 5.0.1 the resulting gptboot works. > > When using 6.0.0 it doesn't. To be exact, it's gptboot.o which is causing > > the problems. When using a gptboot.o from a clang 5 system it is OK, when > > using a gptboot.o from a clang 6 system it fails. > > > > To add more confusion: I usually have WITHOUT_LOADER_GELI in my make.conf. > > When removing this, the resulting gptboot works even when compiled with > > clang 6... > > > > I can reproduce this in case s.o. wants me to do some tests... > > I can't reproduce it on my end, unfortunately. I downloaded the latest > FreeBSD-11.2-PRERELEASE-i386-20180420-r332802 snapshot, installed it to > a GPT partitioned disk, and it boots just fine. > > This snapshot corresponds to r332802, which has clang 6.0.0, with the > EFLAGS change still reverted, so I assume its copy of gptboot is also > compiled with that. > > Which exact revision of the base system were you using? I have done some updates in the meantime and can't tell which revision it was (it was just a few days ago). Currently, the buildbox is at 333056 and I have just compiled gptboot (with WITHOUT_LOADER_GELI) and I am seeing its size is -rw-rw---- 1 andre wheel 20859 27 Apr 19:42 gptboot This is the size where it didn't work but I can't test it at the moment as the build machine and the test environment are @work. I am pretty sure it will fail as there weren't any changes to stand or clang in the last few days but let's wait until Monday when I can verify it... -Andre
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180427174916.GA38967>