Re: kernel config question

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Wed, 2 Jan 2019 13:54:19 -0800
On 1/2/19 1:31 PM, Robert Huff wrote:
> 
> John Baldwin writes:
> 
>>  >> 	[8] In order to have a kernel that can run the 4.x binaries
>>  >> 	needed to do an installworld, you must include the
>>  >> 	COMPAT_FREEBSD4 option in your kernel. [...]
>>
>>  > No, COMPAT_FREEBSD4 is not needed. Maybe COMPAT_FREEBSD11 is needed.
>>  
>>  Yes, that text needs to be made more generic to say that you will need
>>  COMPAT_FREEBSD<N-1>.  Though we've also had some major branches that
>>  didn't get a COMPAT_FREEBSD<N> option.
> 
> 	Are any of those still supported?

I'm not sure, but I mean more that you can't assume we will always have a
COMPAT_FREEBSD<n>.  There was a COMPAT_FREEBSD11.  It looks like we actually
only skipped COMPAT_FREEBSD8 to date.  Perhaps we can just avoid worrying
about the lack of COMPAT_FREEBSD<N-1>.

The text does say "and so on" for newer versions, but it's probably not
clear.  How about this:

Index: UPDATING
===================================================================
--- UPDATING	(revision 342703)
+++ UPDATING	(working copy)
_at__at_ -1901,12 +1901,13 _at__at_ COMMON ITEMS:
 	can be deleted by "make delete-old-libs", but you have to make
 	sure that no program is using those libraries anymore.
 
-	[8] In order to have a kernel that can run the 4.x binaries needed to
-	do an installworld, you must include the COMPAT_FREEBSD4 option in
-	your kernel.  Failure to do so may leave you with a system that is
-	hard to boot to recover. A similar kernel option COMPAT_FREEBSD5 is
-	required to run the 5.x binaries on more recent kernels.  And so on
-	for COMPAT_FREEBSD6 and COMPAT_FREEBSD7.
+	[8] The new kernel must be able to run existing binaries used by
+	an installworld.  When upgrading across major versions, the new
+	kernel's configuration must include the correct COMPAT_FREEBSD<n>
+	option for existing binaries (e.g. COMPAT_FREEBSD11 to run 11.x
+	binaries).  Failure to do so may leave you with a system that is
+	hard to boot to recover.  A GENERIC kernel will include suitable
+	compatibility options to run binaries from older branches.
 
 	Make sure that you merge any new devices from GENERIC since the
 	last time you updated your kernel config file.


-- 
John Baldwin

                                                                            
Received on Wed Jan 02 2019 - 20:54:24 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:19 UTC