svn commit: r296428 - head/sys/boot/common

Dimitry Andric dim at FreeBSD.org
Sun Mar 6 16:17:17 UTC 2016


On 06 Mar 2016, at 17:00, Oliver Pinter <oliver.pinter at hardenedbsd.org> wrote:
> 
> On 3/6/16, Dimitry Andric <dim at freebsd.org> wrote:
>> Author: dim
>> Date: Sun Mar  6 15:57:43 2016
>> New Revision: 296428
>> URL: https://svnweb.freebsd.org/changeset/base/296428
>> 
>> Log:
>>  Since kernel modules can now contain sections of type SHT_AMD64_UNWIND,
>>  the boot loader should not skip over these anymore while loading images.
>>  Otherwise the kernel can still panic when it doesn't find the .eh_frame
>>  section belonging to the .rela.eh_frame section.
>> 
>>  Unfortunately this will require installing boot loaders from sys/boot
>>  before attempting to boot with a new kernel.
> 
> Could you please add a note about this to UPDATING file?

I am a bit torn on this, because normally we always tell people to
install the kernel first, reboot, then run make installworld (which also
installs the boot loaders).

However, in this case, people might depend on their boot loader loading
modules which are required to make the system boot at all.  So if they
happened to forget updating their boot loader first, a panic might be
the result.

I wonder what a failsafe and acceptable upgrade scenario is, in this
case.  Normally the procedure is something like:

  make buildworld
  make buildkernel (with KERNCONF=whatever, if needed)
  make installkernel (again with KERNCONF, if needed)
  reboot (to single user, but cheating is possible usually)
  mergemaster -p
  make installworld

This could maybe be modified to:

  make buildworld
  make buildkernel (with KERNCONF=whatever, if needed)
  make installkernel (again with KERNCONF, if needed)
  make -C sys/boot install
  reboot (to single user, but cheating is possible usually)
  mergemaster -p
  make installworld

E.g. insert the step which installs the boot loaders just after (or
before) the step which installs the kernel.

Is something like this acceptable as a one-time workaround, or maybe it
is better in general, in case we ever add other new features to the boot
loaders?

-Dimitry

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 194 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/svn-src-head/attachments/20160306/dde9da57/attachment.sig>


More information about the svn-src-head mailing list