UPDATING revision 276157
1Updating Information for FreeBSD current users
2
3This file is maintained and copyrighted by M. Warner Losh <imp@freebsd.org>.
4See end of file for further details.  For commonly done items, please see the
5COMMON ITEMS: section later in the file.  These instructions assume that you
6basically know what you are doing.  If not, then please consult the FreeBSD
7handbook:
8
9    http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
10
11Items affecting the ports and packages system can be found in
12/usr/ports/UPDATING.  Please read that file before running portupgrade.
13
1420141223:	p7	FreeBSD-SA-14:31.ntp
15			FreeBSD-EN-14:13.freebsd-update
16
17	Fix multiple vulnerabilities in NTP suite.  [SA-14:31]
18	Fix directory deletion issue in freebsd-update.	 [EN-14:13]
19
2020141210:	p6	FreeBSD-SA-14:28.file
21			FreeBSD-SA-14:29.bind
22
23	Fix multiple vulnerabilities in file(1) and libmagic(3).
24	[SA-14:28]
25
26	Fix BIND remote denial of service vulnerability. [SA-14:29]
27
2820141104:	p5	FreeBSD-SA-14:25.setlogin
29			FreeBSD-SA-14:26.ftp
30			FreeBSD-EN-14:12.zfs
31
32	Fix kernel stack disclosure in setlogin(2) / getlogin(2).
33	[SA-14:25]
34
35	Fix remote command execution in ftp(1). [SA-14:26]
36
37	Fix NFSv4 and ZFS cache consistency issue. [EN-14:12]
38
3920141022:	p4	FreeBSD-EN-14:10.tzdata
40			FreeBSD-EN-14:11.crypt
41
42	Time zone data file update. [EN-14:10]
43
44	Change crypt(3) default hashing algorithm back to DES. [EN-14:11]
45
4620141021:	p3	FreeBSD-SA-14:20.rtsold
47			FreeBSD-SA-14:21.routed
48			FreeBSD-SA-14:22.namei
49			FreeBSD-SA-14:23.openssl
50
51	Fix rtsold(8) remote buffer overflow vulnerability. [SA-14:20]
52
53	Fix routed(8) remote denial of service vulnerability. [SA-14:21]
54
55	Fix memory leak in sandboxed namei lookup. [SA-14:22]
56
57	Fix OpenSSL multiple vulnerabilities. [SA-14:23]
58
5920140916:	p2	FreeBSD-SA-14:19.tcp
60	Fix Denial of Service in TCP packet processing. [SA-14:19]
61
6220140909:	p1	FreeBSD-SA-14:18.openssl
63	Fix OpenSSL multiple vulnerabilities. [SA-14:18]
64
6520140716:
66	9.3-RELEASE.
67
6820140608:
69	On i386 and amd64 systems, the onifconsole flag is now set by default
70	in /etc/ttys for ttyu0. This causes ttyu0 to be automatically enabled
71	as a login TTY if it is set in the bootloader as an active kernel
72	console. No changes in behavior should result otherwise. To revert to
73	the previous behavior, set ttyu0 to "off" in /etc/ttys.
74
7520140512:
76	Clang and llvm have been upgraded to 3.4.1 release.
77
7820140321:
79	Clang and llvm have been upgraded to 3.4 release.
80
8120140216:
82	The nve(4) driver for NVIDIA nForce MCP Ethernet adapters has
83	been deprecated and will not be part of FreeBSD 11.0 and later
84	releases.  If you use this driver, please consider switching to
85	the nfe(4) driver instead.
86
8720131216:
88	The behavior of gss_pseudo_random() for the krb5 mechanism
89	has changed, for applications requesting a longer random string
90	than produced by the underlying enctype's pseudo-random() function.
91	In particular, the random string produced from a session key of
92	enctype aes256-cts-hmac-sha1-96 or aes256-cts-hmac-sha1-96 will
93	be different at the 17th octet and later, after this change.
94	The counter used in the PRF+ construction is now encoded as a
95	big-endian integer in accordance with RFC 4402.
96	__FreeBSD_version is bumped to 902505.
97
9820130930:
99	9.2-RELEASE.
100
10120130823:
102	Behavior of devfs rules path matching has been changed.
103	Pattern is now always matched against fully qualified devfs
104	path and slash characters must be explicitly matched by
105	slashes in pattern (FNM_PATHNAME). Rulesets involving devfs
106	subdirectories must be reviewed.
107
10820130705:
109	hastctl(8)'s `status' command output changed to terse one-liner format.
110	Scripts using this should switch to `list' command or be rewritten.
111
11220130618:
113        Fix a bug that allowed a tracing process (e.g. gdb) to write
114        to a memory-mapped file in the traced process's address space
115        even if neither the traced process nor the tracing process had
116        write access to that file.
117
11820130605:
119	Added ZFS TRIM support which is enabled by default. To disable
120	ZFS TRIM support set vfs.zfs.trim.enabled=0 in loader.conf.
121
122	Creating new ZFS pools and adding new devices to existing pools
123	first performs a full device level TRIM which can take a significant
124	amount of time. The sysctl vfs.zfs.vdev.trim_on_init can be set to 0
125	to disable this behaviour.
126
127	ZFS TRIM requires the underlying device support BIO_DELETE which
128	is currently provided by methods such as ATA TRIM and SCSI UNMAP
129	via CAM, which are typically supported by SSD's.
130
131	Stats for ZFS TRIM can be monitored by looking at the sysctl's
132	under kstat.zfs.misc.zio_trim.
133
13420130524:
135	`list' command has been added to hastctl(8).  For now, it is full
136	equivalent of `status' command.
137	WARNING: in the near future the output of hastctl's status command
138	will change to more terse format.  If you use `hastctl status'
139	for parsing in your scripts, switch to `hastctl list'.
140
14120130430:
142	The mergemaster command now uses the default MAKEOBJDIRPREFIX
143	rather than creating it's own in the temporary directory in
144	order allow access to bootstrapped versions of tools such as
145	install and mtree.  When upgrading from version of FreeBSD where
146	the install command does not support -l, you will need to
147	install a new mergemaster command if mergemaster -p is required.
148	This can be accomplished with the command (cd src/usr.sbin/mergemaster
149	&& make install).
150
151	Due to the use of the new -l option to install(1) during build
152	and install, you must take care not to directly set the INSTALL
153	make variable in your /etc/make.conf, /etc/src.conf, or on the
154	command line.  If you wish to use the -C flag for all installs
155	you may be able to add INSTALL+=-C to /etc/make.conf or
156	/etc/src.conf.
157
15820130429:
159	Fix a bug that allows NFS clients to issue READDIR on files.
160
16120130315:
162	The install(1) option -M has changed meaning and now takes an
163	argument that is a file or path to append logs to.  In the
164	unlikely event that -M was the last option on the command line
165	and the command line contained at least two files and a target
166	directory the first file will have logs appended to it.  The -M
167	option served little practical purpose in the last decade so it's
168	used expected to be extremely rare.
169
17020130225:
171	A new compression method (lz4) has been merged to.  Please refer to
172	zpool-features(7) for more information.
173
174	Please refer to the "ZFS notes" section of this file for information
175	on upgrading boot ZFS pools.
176
17720121224:
178	The VFS KBI was changed with the merge of several nullfs
179	optimizations and fixes.  All filesystem modules must be
180	recompiled.
181
18220121218:
183	With the addition of auditdistd(8), a new auditdistd user is now
184	depended on during installworld.  "mergemaster -p" can be used to add
185	the user prior to installworld, as documented in the handbook.
186
18720121205:
188	9.1-RELEASE.
189
19020121129:
191	A new version of ZFS (pool version 5000) has been merged to 9-STABLE.
192	Starting with this version the old system of ZFS pool versioning
193	is superseded by "feature flags". This concept enables forward
194	compatibility against certain future changes in functionality of ZFS
195	pools. The first two read-only compatible "feature flags" for ZFS
196	pools are "com.delphix:async_destroy" and "com.delphix:empty_bpobj".
197	For more information read the new zpool-features(7) manual page.
198	Please refer to the "ZFS notes" section of this file for information
199	on upgrading boot ZFS pools.
200
20120121114:
202	The commit introducing bsd.compiler.mk breaks the traditional
203	building of kernels before this point. Add -m ${SRC}/share/mk
204	(for the right value of SRC) to your command lines to work
205	around; update your useland to a point after this; or use the
206	buildkernel/installkernel top-level targets. See also 20120829.
207
20820121102:
209	The IPFIREWALL_FORWARD kernel option has been removed. Its
210	functionality now turned on by default.
211
21220120913:
213	The random(4) support for the VIA hardware random number
214	generator (`PADLOCK') is no longer enabled unconditionally.
215	Add the PADLOCK_RNG option in the custom kernel config if
216	needed.  The GENERIC kernels on i386 and amd64 do include the
217	option, so the change only affects the custom kernel
218	configurations.
219
22020120829:
221	The amd64 kernel now uses xsetbv, xrstor instructions. To compile with
222	the traditional method, you must update your system with an installworld
223	before the kernel will build. The documented make buildkernel/installkernel
224	interfaces (coupled with fresh make kernel-toolchain) continue to work.
225
22620120727:
227	The sparc64 ZFS loader has been changed to no longer try to auto-
228	detect ZFS providers based on diskN aliases but now requires these
229	to be explicitly listed in the OFW boot-device environment variable.
230
23120120422:
232	Now unix domain sockets behave "as expected" on	nullfs(5). Previously
233	nullfs(5) did not pass through all behaviours to the underlying layer,
234	as a result if we bound to a socket on the lower layer we could connect
235	only to the lower path; if we bound to the upper layer we could connect
236	only to	the upper path. The new behavior is one can connect to both the
237	lower and the upper paths regardless what layer path one binds to.
238
23920120109:
240	The acpi_wmi(4) status device /dev/wmistat has been renamed to
241	/dev/wmistat0.
242
24320120106:
244	A new VOP_ADVISE() was added to support posix_fadvise(2).  All
245	filesystem modules must be recompiled.
246
24720120106:
248	The interface of the VOP_VPTOCNP(9) changed, now the returned
249	vnode shall be referenced, previously it was required to be
250	only held.  All in-tree filesystems are converted.
251
25220120106:
253	9.0-RELEASE.
254
25520111101:
256	The broken amd(4) driver has been replaced with esp(4) in the amd64,
257	i386 and pc98 GENERIC kernel configuration files.
258
25920110913:
260	This commit modifies vfs_register() so that it uses a hash
261	calculation to set vfc_typenum, which is enabled by default.
262	The first time a system is booted after this change, the
263	vfc_typenum values will change for all file systems. The
264	main effect of this is a change to the NFS server file handles
265	for file systems that use vfc_typenum in their fsid, such as ZFS.
266	It will, however, prevent vfc_typenum from changing when file
267	systems are loaded in a different order for subsequent reboots.
268	To disable this, you can set vfs.typenumhash=0 in /boot/loader.conf
269	until you are ready to remount all NFS clients after a reboot.
270
27120110828:
272	Bump the shared library version numbers for libraries that
273	do not use symbol versioning, have changed the ABI compared
274	to stable/8 and which shared library version was not bumped.
275	Done as part of 9.0-RELEASE cycle.
276
27720110815:
278	During the merge of Capsicum features, the fget(9) KPI was modified.
279	This may require the rebuilding of out-of-tree device drivers --
280	issues have been reported specifically with the nVidia device driver.
281	__FreeBSD_version is bumped to 900041.
282
283	Also, there is a period between 20110811 and 20110814 where the
284	special devices /dev/{stdin,stdout,stderr} did not work correctly.
285	Building world from a kernel during that window may not work.
286
28720110628:
288	The packet filter (pf) code has been updated to OpenBSD 4.5.
289	You need to update userland tools to be in sync with kernel.
290	This update breaks backward compatibility with earlier pfsync(4)
291	versions.  Care must be taken when updating redundant firewall setups.
292
29320110608:
294	The following sysctls and tunables are retired on x86 platforms:
295		machdep.hlt_cpus
296		machdep.hlt_logical_cpus
297	The following sysctl is retired:
298		machdep.hyperthreading_allowed
299	The sysctls were supposed to provide a way to dynamically offline and
300	online selected CPUs on x86 platforms, but the implementation has not
301	been reliable especially with SCHED_ULE scheduler.
302	machdep.hyperthreading_allowed tunable is still available to ignore
303	hyperthreading CPUs at OS level.
304	Individual CPUs can be disabled using hint.lapic.X.disabled tunable,
305	where X is an APIC ID of a CPU.  Be advised, though, that disabling
306	CPUs in non-uniform fashion will result in non-uniform topology and
307	may lead to sub-optimal system performance with SCHED_ULE, which is
308	a default scheduler.
309
31020110607:
311	cpumask_t type is retired and cpuset_t is used in order to describe
312	a mask of CPUs.
313
31420110531:
315	Changes to ifconfig(8) for dynamic address family detection mandate
316	that you are running a kernel of 20110525 or later.  Make sure to
317	follow the update procedure to boot a new kernel before installing
318	world.
319
32020110513:
321	Support for sun4v architecture is officially dropped
322
32320110503:
324	Several KPI breaking changes have been committed to the mii(4) layer,
325	the PHY drivers and consequently some Ethernet drivers using mii(4).
326	This means that miibus.ko and the modules of the affected Ethernet
327	drivers need to be recompiled.
328
329	Note to kernel developers: Given that the OUI bit reversion problem
330	was fixed as part of these changes all mii(4) commits related to OUIs,
331	i.e. to sys/dev/mii/miidevs, PHY driver probing and vendor specific
332	handling, no longer can be merged verbatim to stable/8 and previous
333	branches.
334
33520110430:
336	Users of the Atheros AR71xx SoC code now need to add 'device ar71xx_pci'
337	into their kernel configurations along with 'device pci'.
338
33920110427:
340	The default NFS client is now the new NFS client, so fstype "newnfs"
341	is now "nfs" and the regular/old NFS client is now fstype "oldnfs".
342	Although mounts via fstype "nfs" will usually work without userland
343	changes, it is recommended that the mount(8) and mount_nfs(8)
344	commands be rebuilt from sources and that a link to mount_nfs called
345	mount_oldnfs be created. The new client is compiled into the
346	kernel with "options NFSCL" and this is needed for diskless root
347	file systems. The GENERIC kernel configs have been changed to use
348	NFSCL and NFSD (the new server) instead of NFSCLIENT and NFSSERVER.
349	To use the regular/old client, you can "mount -t oldnfs ...". For
350	a diskless root file system, you must also include a line like:
351	
352	vfs.root.mountfrom="oldnfs:"
353
354	in the boot/loader.conf on the root fs on the NFS server to make
355	a diskless root fs use the old client.
356
35720110424:
358	The GENERIC kernels for all architectures now default to the new
359	CAM-based ATA stack. It means that all legacy ATA drivers were
360	removed and replaced by respective CAM drivers. If you are using
361	ATA device names in /etc/fstab or other places, make sure to update
362	them respectively (adX -> adaY, acdX -> cdY, afdX -> daY, astX -> saY,
363	where 'Y's are the sequential numbers starting from zero for each type
364	in order of detection, unless configured otherwise with tunables,
365	see cam(4)). There will be symbolic links created in /dev/ to map
366	old adX devices to the respective adaY. They should provide basic
367	compatibility for file systems mounting in most cases, but they do
368	not support old user-level APIs and do not have respective providers
369	in GEOM. Consider using updated management tools with new device names.
370
371	It is possible to load devices ahci, ata, siis and mvs as modules,
372	but option ATA_CAM should remain in kernel configuration to make ata
373	module work as CAM driver supporting legacy ATA controllers. Device ata
374	still can be used in modular fashion (atacore + ...). Modules atadisk
375	and atapi* are not used and won't affect operation in ATA_CAM mode.
376	Note that to use CAM-based ATA kernel should include CAM devices
377	scbus, pass, da (or explicitly ada), cd and optionally others. All of
378	them are parts of the cam module.
379
380	ataraid(4) functionality is now supported by the RAID GEOM class.
381	To use it you can load geom_raid kernel module and use graid(8) tool
382	for management. Instead of /dev/arX device names, use /dev/raid/rX.
383
384	No kernel config options or code have been removed, so if a problem
385	arises, please report it and optionally revert to the old ATA stack.
386	In order to do it you can remove from the kernel config:
387	    options        ATA_CAM
388	    device         ahci
389	    device         mvs
390	    device         siis
391	, and instead add back:
392	    device         atadisk         # ATA disk drives
393	    device         ataraid         # ATA RAID drives
394	    device         atapicd         # ATAPI CDROM drives
395	    device         atapifd         # ATAPI floppy drives
396	    device         atapist         # ATAPI tape drives
397
39820110423:
399	The default NFS server has been changed to the new server, which
400	was referred to as the experimental server. If you need to switch
401	back to the old NFS server, you must now put the "-o" option on
402	both the mountd and nfsd commands. This can be done using the
403	mountd_flags and nfs_server_flags rc.conf variables until an
404	update to the rc scripts is committed, which is coming soon.
405
40620110418:
407	The GNU Objective-C runtime library (libobjc), and other Objective-C
408	related components have been removed from the base system.  If you
409	require an Objective-C library, please use one of the available ports.
410
41120110331:
412	ath(4) has been split into bus- and device- modules. if_ath contains
413	the HAL, the TX rate control and the network device code. if_ath_pci
414	contains the PCI bus glue. For Atheros MIPS embedded systems, if_ath_ahb
415	contains the AHB glue. Users need to load both if_ath_pci and if_ath
416	in order to use ath on everything else.
417
418	TO REPEAT: if_ath_ahb is not needed for normal users. Normal users only
419	need to load if_ath and if_ath_pci for ath(4) operation.
420
42120110314:
422	As part of the replacement of sysinstall, the process of building
423	release media has changed significantly. For details, please re-read
424	release(7), which has been updated to reflect the new build process.
425
42620110218:
427	GNU binutils 2.17.50 (as of 2007-07-03) has been merged to -HEAD.  This
428	is the last available version under GPLv2.  It brings a number of new
429	features, such as support for newer x86 CPU's (with SSE-3, SSSE-3, SSE
430	4.1 and SSE 4.2), better support for powerpc64, a number of new
431	directives, and lots of other small improvements.  See the ChangeLog
432	file in contrib/binutils for the full details.
433
43420110218:
435	IPsec's HMAC_SHA256-512 support has been fixed to be RFC4868
436	compliant, and will now use half of hash for authentication.
437	This will break interoperability with all stacks (including all
438	actual FreeBSD versions) who implement
439	draft-ietf-ipsec-ciph-sha-256-00 (they use 96 bits of hash for
440	authentication).
441	The only workaround with such peers is to use another HMAC
442	algorithm for IPsec ("phase 2") authentication.
443
44420110207:
445	Remove the uio_yield prototype and symbol.  This function has
446	been misnamed since it was introduced and should not be
447	globally exposed with this name.  The equivalent functionality
448	is now available using kern_yield(curthread->td_user_pri).
449	The function remains undocumented.
450
45120110112:
452	A SYSCTL_[ADD_]UQUAD was added for unsigned uint64_t pointers,
453	symmetric with the existing SYSCTL_[ADD_]QUAD.  Type checking
454	for scalar sysctls is defined but disabled.  Code that needs
455	UQUAD to pass the type checking that must compile on older
456	systems where the define is not present can check against
457	__FreeBSD_version >= 900030.
458
459	The system dialog(1) has been replaced with a new version previously
460	in ports as devel/cdialog. dialog(1) is mostly command-line compatible
461	with the previous version, but the libdialog associated with it has
462	a largely incompatible API. As such, the original version of libdialog
463	will be kept temporarily as libodialog, until its base system consumers
464	are replaced or updated. Bump __FreeBSD_version to 900030.
465
46620110103:
467	If you are trying to run make universe on a -stable system, and you get
468	the following warning:
469	"Makefile", line 356: "Target architecture for i386/conf/GENERIC 
470	unknown.  config(8) likely too old."
471	or something similar to it, then you must upgrade your -stable system
472	to 8.2-Release or newer (really, any time after r210146 7/15/2010 in
473	stable/8) or build the config from the latest stable/8 branch and
474	install it on your system.
475
476	Prior to this date, building a current universe on 8-stable system from
477	between 7/15/2010 and 1/2/2011 would result in a weird shell parsing
478	error in the first kernel build phase.  A new config on those old 
479	systems will fix that problem for older versions of -current.
480
48120101228:
482	The TCP stack has been modified to allow Khelp modules to interact with
483	it via helper hook points and store per-connection data in the TCP
484	control block. Bump __FreeBSD_version to 900029. User space tools that
485	rely on the size of struct tcpcb in tcp_var.h (e.g. sockstat) need to
486	be recompiled.
487
48820101114:
489	Generic IEEE 802.3 annex 31B full duplex flow control support has been
490	added to mii(4) and bge(4), bce(4), msk(4), nfe(4) and stge(4) along
491	with brgphy(4), e1000phy(4) as well as ip1000phy() have been converted
492	to take advantage of it instead of using custom implementations.  This
493	means that these drivers now no longer unconditionally advertise
494	support for flow control but only do so if flow control is a selected
495	media option.  This was implemented in the generic support that way in
496	order to allow flow control to be switched on and off via ifconfig(8)
497	with the PHY specific default to typically off in order to protect
498	from unwanted effects.  Consequently, if you used flow control with
499	one of the above mentioned drivers you now need to explicitly enable
500	it, for example via:
501		ifconfig bge0 media auto mediaopt flowcontrol
502
503	Along with the above mentioned changes generic support for setting
504	1000baseT master mode also has been added and brgphy(4), ciphy(4),
505	e1000phy(4) as well as ip1000phy(4) have been converted to take
506	advantage of it.  This means that these drivers now no longer take the
507	link0 parameter for selecting master mode but the master media option
508	has to be used instead, for example like in the following:
509		ifconfig bge0 media 1000baseT mediaopt full-duplex,master
510
511	Selection of master mode now is also available with all other PHY
512	drivers supporting 1000baseT.
513
51420101111:
515	The TCP stack has received a significant update to add support for
516	modularised congestion control and generally improve the clarity of
517	congestion control decisions. Bump __FreeBSD_version to 900025. User
518	space tools that rely on the size of struct tcpcb in tcp_var.h (e.g.
519	sockstat) need to be recompiled.
520
52120101002:
522	The man(1) utility has been replaced by a new version that no longer
523	uses /etc/manpath.config. Please consult man.conf(5) for how to
524	migrate local entries to the new format.
525
52620100928:
527	The copyright strings printed by login(1) and sshd(8) at the time of a
528	new connection have been removed to follow other operating systems and
529	upstream sshd.
530
53120100915:
532	A workaround for a fixed ld bug has been removed in kernel code,
533	so make sure that your system ld is built from sources after
534	revision 210245 from 2010-07-19 (r211583 if building head kernel
535	on stable/8, r211584 for stable/7; both from 2010-08-21).
536	A symptom of incorrect ld version is different addresses for
537	set_pcpu section and __start_set_pcpu symbol in kernel and/or modules.
538
53920100913:
540	The $ipv6_prefer variable in rc.conf(5) has been split into
541	$ip6addrctl_policy and $ipv6_activate_all_interfaces.
542
543	The $ip6addrctl_policy is a variable to choose a pre-defined
544	address selection policy set by ip6addrctl(8).  A value
545	"ipv4_prefer", "ipv6_prefer" or "AUTO" can be specified.  The
546	default is "AUTO".
547
548	The $ipv6_activate_all_interfaces specifies whether IFDISABLED
549	flag (see an entry of 20090926) is set on an interface with no
550	corresponding $ifconfig_IF_ipv6 line.  The default is "NO" for
551	security reason.  If you want IPv6 link-local address on all
552	interfaces by default, set this to "YES".
553
554	The old ipv6_prefer="YES" is equivalent to
555	ipv6_activate_all_interfaces="YES" and
556	ip6addrctl_policy="ipv6_prefer".
557
55820100913:
559	DTrace has grown support for userland tracing. Due to this, DTrace is
560	now i386 and amd64 only.
561	dtruss(1) is now installed by default on those systems and a new
562	kernel module is needed for userland tracing: fasttrap.
563	No changes to your kernel config file are necessary to enable
564	userland tracing, but you might consider adding 'STRIP=' and
565	'CFLAGS+=-fno-omit-frame-pointer' to your make.conf if you want
566	to have informative userland stack traces in DTrace (ustack).
567
56820100725:
569	The acpi_aiboost(4) driver has been removed in favor of the new
570	aibs(4) driver. You should update your kernel configuration file.
571
57220100722:
573	BSD grep has been imported to the base system and it is built by
574	default.  It is completely BSD licensed, highly GNU-compatible, uses
575	less memory than its GNU counterpart and has a small codebase.
576	However, it is slower than its GNU counterpart, which is mostly
577	noticeable for larger searches, for smaller ones it is measurable
578	but not significant.  The reason is complex, the most important factor
579	is that we lack a modern and efficient regex library and GNU
580	overcomes this by optimizing the searches internally.  Future work
581	on improving the regex performance is planned, for the meantime,
582	users that need better performance, can build GNU grep instead by
583	setting the WITH_GNU_GREP knob.
584
58520100713:
586	Due to the import of powerpc64 support, all existing powerpc kernel
587	configuration files must be updated with a machine directive like this:
588	    machine powerpc powerpc
589
590	In addition, an updated config(8) is required to build powerpc kernels
591	after this change.
592
59320100713:
594	A new version of ZFS (version 15) has been merged to -HEAD.
595	This version uses a python library for the following subcommands:
596	zfs allow, zfs unallow, zfs groupspace, zfs userspace.
597	For full functionality of these commands the following port must
598	be installed: sysutils/py-zfs
599
60020100429:
601	'vm_page's are now hashed by physical address to an array of mutexes.
602	Currently this is only used to serialize access to hold_count. Over 
603	time the page queue mutex will be peeled away. This changes the size
604	of pmap on every architecture. And requires all callers of vm_page_hold
605	and vm_page_unhold to be updated. 
606 
60720100402:
608	WITH_CTF can now be specified in src.conf (not recommended, there
609	are some problems with static executables), make.conf (would also
610	affect ports which do not use GNU make and do not override the
611	compile targets) or in the kernel config (via "makeoptions
612	WITH_CTF=yes").
613	When WITH_CTF was specified there before this was silently ignored,
614	so make sure that WITH_CTF is not used in places which could lead
615	to unwanted behavior.
616
61720100311:
618	The kernel option COMPAT_IA32 has been replaced with COMPAT_FREEBSD32
619	to allow 32-bit compatibility on non-x86 platforms. All kernel
620	configurations on amd64 and ia64 platforms using these options must
621	be modified accordingly.
622
62320100113:
624	The utmp user accounting database has been replaced with utmpx,
625	the user accounting interface standardized by POSIX.
626	Unfortunately the semantics of utmp and utmpx don't match,
627	making it practically impossible to support both interfaces.
628	The user accounting database is used by tools like finger(1),
629	last(1), talk(1), w(1) and ac(8).
630
631	All applications in the base system use utmpx.  This means only
632	local binaries (e.g. from the ports tree) may still use these
633	utmp database files.  These applications must be rebuilt to make
634	use of utmpx.
635
636	After the system has been upgraded, it is safe to remove the old
637	log files (/var/run/utmp, /var/log/lastlog and /var/log/wtmp*),
638	assuming their contents is of no importance anymore.  Old wtmp
639	databases can only be used by last(1) and ac(8) after they have
640	been converted to the new format using wtmpcvt(1).
641
64220100108:
643	Introduce the kernel thread "deadlock resolver" (which can be enabled
644	via the DEADLKRES option, see NOTES for more details) and the
645	sleepq_type() function for sleepqueues.
646
64720091202:
648	The rc.firewall and rc.firewall6 were unified, and
649	rc.firewall6 and rc.d/ip6fw were removed.
650	According to the removal of rc.d/ip6fw, ipv6_firewall_* rc
651	variables are obsoleted.  Instead, the following new rc
652	variables are added to rc.d/ipfw:
653
654		firewall_client_net_ipv6, firewall_simple_iif_ipv6,
655		firewall_simple_inet_ipv6, firewall_simple_oif_ipv6,
656		firewall_simple_onet_ipv6, firewall_trusted_ipv6
657
658	The meanings correspond to the relevant IPv4 variables.
659
66020091125:
661	8.0-RELEASE.
662
66320091113:
664	The default terminal emulation for syscons(4) has been changed
665	from cons25 to xterm on all platforms except pc98.  This means
666	that the /etc/ttys file needs to be updated to ensure correct
667	operation of applications on the console.
668
669	The terminal emulation style can be toggled per window by using
670	vidcontrol(1)'s -T flag.  The TEKEN_CONS25 kernel configuration
671	options can be used to change the compile-time default back to
672	cons25.
673
674	To prevent graphical artifacts, make sure the TERM environment
675	variable is set to match the terminal emulation that is being
676	performed by syscons(4).
677
67820091109:
679	The layout of the structure ieee80211req_scan_result has changed.
680	Applications that require wireless scan results (e.g. ifconfig(8))
681	from net80211 need to be recompiled.
682
683	Applications such as wpa_supplicant(8) may require a full world
684	build without using NO_CLEAN in order to get synchronized with the
685	new structure.
686
68720091025:
688	The iwn(4) driver has been updated to support the 5000 and 5150 series.
689	There's one kernel module for each firmware. Adding "device iwnfw"
690	to the kernel configuration file means including all three firmware
691	images inside the kernel. If you want to include just the one for
692	your wireless card, use the devices iwn4965fw, iwn5000fw or
693	iwn5150fw.
694
69520090926:
696	The rc.d/network_ipv6, IPv6 configuration script has been integrated
697	into rc.d/netif.  The changes are the following:
698
699	1. To use IPv6, simply define $ifconfig_IF_ipv6 like $ifconfig_IF
700	   for IPv4.  For aliases, $ifconfig_IF_aliasN should be used.
701	   Note that both variables need the "inet6" keyword at the head.
702
703	   Do not set $ipv6_network_interfaces manually if you do not
704	   understand what you are doing.  It is not needed in most cases. 
705
706	   $ipv6_ifconfig_IF and $ipv6_ifconfig_IF_aliasN still work, but
707	   they are obsolete.
708
709	2. $ipv6_enable is obsolete.  Use $ipv6_prefer and
710	   "inet6 accept_rtadv" keyword in ifconfig(8) instead.
711
712	   If you define $ipv6_enable=YES, it means $ipv6_prefer=YES and
713	   all configured interfaces have "inet6 accept_rtadv" in the
714	   $ifconfig_IF_ipv6.  These are for backward compatibility.
715
716	3. A new variable $ipv6_prefer has been added.  If NO, IPv6
717	   functionality of interfaces with no corresponding
718	   $ifconfig_IF_ipv6 is disabled by using "inet6 ifdisabled" flag,
719	   and the default address selection policy of ip6addrctl(8) 
720	   is the IPv4-preferred one (see rc.d/ip6addrctl for more details).
721	   Note that if you want to configure IPv6 functionality on the
722	   disabled interfaces after boot, first you need to clear the flag by
723	   using ifconfig(8) like:
724
725		ifconfig em0 inet6 -ifdisabled
726
727	   If YES, the default address selection policy is set as
728	   IPv6-preferred.
729
730	   The default value of $ipv6_prefer is NO.
731
732	4. If your system need to receive Router Advertisement messages,
733	   define "inet6 accept_rtadv" in $ifconfig_IF_ipv6.  The rc(8)
734	   scripts automatically invoke rtsol(8) when the interface becomes
735	   UP.  The Router Advertisement messages are used for SLAAC
736	   (State-Less Address AutoConfiguration).
737
73820090922:
739	802.11s D3.03 support was committed. This is incompatible with the
740	previous code, which was based on D3.0.
741
74220090912:
743	A sysctl variable net.inet6.ip6.accept_rtadv now sets the default value
744	of a per-interface flag ND6_IFF_ACCEPT_RTADV, not a global knob to
745	control whether accepting Router Advertisement messages or not.
746	Also, a per-interface flag ND6_IFF_AUTO_LINKLOCAL has been added and
747	a sysctl variable net.inet6.ip6.auto_linklocal is its default value.
748	The ifconfig(8) utility now supports these flags.
749
75020090910:
751	ZFS snapshots are now mounted with MNT_IGNORE flag. Use -v option for
752	mount(8) and -a option for df(1) to see them.
753
75420090825:
755	The old tunable hw.bus.devctl_disable has been superseded by
756	hw.bus.devctl_queue.  hw.bus.devctl_disable=1 in loader.conf should be
757	replaced by hw.bus.devctl_queue=0.  The default for this new tunable
758	is 1000.
759
76020090813:
761	Remove the option STOP_NMI.  The default action is now to use NMI only
762	for KDB via the newly introduced function stop_cpus_hard() and
763	maintain stop_cpus() to just use a normal IPI_STOP on ia32 and amd64.
764
76520090803:
766	The stable/8 branch created in subversion.  This corresponds to the
767	RELENG_8 branch in CVS.
768
76920090719:
770	Bump the shared library version numbers for all libraries that do not
771	use symbol versioning as part of the 8.0-RELEASE cycle.  Bump
772	__FreeBSD_version to 800105.
773
77420090714:
775	Due to changes in the implementation of virtual network stack support,
776	all network-related kernel modules must be recompiled.  As this change
777	breaks the ABI, bump __FreeBSD_version to 800104.
778
77920090713:
780	The TOE interface to the TCP syncache has been modified to remove
781	struct tcpopt (<netinet/tcp_var.h>) from the ABI of the network stack.
782	The cxgb driver is the only TOE consumer affected by this change, and
783	needs to be recompiled along with the kernel. As this change breaks
784	the ABI, bump __FreeBSD_version to 800103.
785
78620090712: 
787	Padding has been added to struct tcpcb, sackhint and tcpstat in
788	<netinet/tcp_var.h> to facilitate future MFCs and bug fixes whilst
789	maintaining the ABI. However, this change breaks the ABI, so bump
790	__FreeBSD_version to 800102. User space tools that rely on the size of
791	any of these structs (e.g. sockstat) need to be recompiled.
792
79320090630:
794	The NFS_LEGACYRPC option has been removed along with the old kernel
795	RPC implementation that this option selected. Kernel configurations
796	may need to be adjusted.
797
79820090629:
799	The network interface device nodes at /dev/net/<interface> have been
800	removed.  All ioctl operations can be performed the normal way using
801	routing sockets.  The kqueue functionality can generally be replaced
802	with routing sockets.
803
80420090628:
805	The documentation from the FreeBSD Documentation Project (Handbook,
806	FAQ, etc.) is now installed via packages by sysinstall(8) and under
807	the /usr/local/share/doc/freebsd directory instead of /usr/share/doc.
808
80920090624:
810	The ABI of various structures related to the SYSV IPC API have been
811	changed.  As a result, the COMPAT_FREEBSD[456] and COMPAT_43 kernel
812	options now all require COMPAT_FREEBSD7.  Bump __FreeBSD_version to
813	800100.
814
81520090622:
816	Layout of struct vnet has changed as routing related variables were
817	moved to their own Vimage module. Modules need to be recompiled.  Bump
818	__FreeBSD_version to 800099.
819
82020090619:
821	NGROUPS_MAX and NGROUPS have been increased from 16 to 1023 and 1024
822	respectively.  As long as no more than 16 groups per process are used,
823	no changes should be visible.  When more than 16 groups are used, old
824	binaries may fail if they call getgroups() or getgrouplist() with
825	statically sized storage.  Recompiling will work around this, but
826	applications should be modified to use dynamically allocated storage
827	for group arrays as POSIX.1-2008 does not cap an implementation's
828	number of supported groups at NGROUPS_MAX+1 as previous versions did.
829
830	NFS and portalfs mounts may also be affected as the list of groups is
831	truncated to 16.  Users of NFS who use more than 16 groups, should
832	take care that negative group permissions are not used on the exported
833	file systems as they will not be reliable unless a GSSAPI based
834	authentication method is used.
835
83620090616: 
837	The compiling option ADAPTIVE_LOCKMGRS has been introduced.  This
838	option compiles in the support for adaptive spinning for lockmgrs
839	which want to enable it.  The lockinit() function now accepts the flag
840	LK_ADAPTIVE in order to make the lock object subject to adaptive
841	spinning when both held in write and read mode.
842
84320090613:
844	The layout of the structure returned by IEEE80211_IOC_STA_INFO has
845	changed.  User applications that use this ioctl need to be rebuilt.
846
84720090611:
848	The layout of struct thread has changed.  Kernel and modules need to
849	be rebuilt.
850
85120090608:
852	The layout of structs ifnet, domain, protosw and vnet_net has changed.
853	Kernel modules need to be rebuilt.  Bump __FreeBSD_version to 800097.
854
85520090602:
856	window(1) has been removed from the base system. It can now be
857	installed from ports. The port is called misc/window.
858
85920090601:
860	The way we are storing and accessing `routing table' entries has
861	changed. Programs reading the FIB, like netstat, need to be
862	re-compiled.
863
86420090601:
865	A new netisr implementation has been added for FreeBSD 8.  Network
866	file system modules, such as igmp, ipdivert, and others, should be
867	rebuilt.
868	Bump __FreeBSD_version to 800096.
869
87020090530:
871	Remove the tunable/sysctl debug.mpsafevfs as its initial purpose is no
872	more valid.
873
87420090530:
875	Add VOP_ACCESSX(9).  File system modules need to be rebuilt.
876	Bump __FreeBSD_version to 800094.
877
87820090529:
879	Add mnt_xflag field to 'struct mount'.  File system modules need to be
880	rebuilt.
881	Bump __FreeBSD_version to 800093.
882
88320090528:
884	The compiling option ADAPTIVE_SX has been retired while it has been
885	introduced the option NO_ADAPTIVE_SX which handles the reversed logic.
886	The KPI for sx_init_flags() changes as accepting flags:
887	SX_ADAPTIVESPIN flag has been retired while the SX_NOADAPTIVE flag has
888	been introduced in order to handle the reversed logic.
889	Bump __FreeBSD_version to 800092.
890
89120090527:
892	Add support for hierarchical jails.  Remove global securelevel.
893	Bump __FreeBSD_version to 800091.
894
89520090523:
896	The layout of struct vnet_net has changed, therefore modules
897	need to be rebuilt.
898	Bump __FreeBSD_version to 800090.
899
90020090523:
901	The newly imported zic(8) produces a new format in the output. Please
902	run tzsetup(8) to install the newly created data to /etc/localtime.
903
90420090520:
905	The sysctl tree for the usb stack has renamed from hw.usb2.* to
906	hw.usb.* and is now consistent again with previous releases.
907
90820090520:
909	802.11 monitor mode support was revised and driver api's were changed.
910	Drivers dependent on net80211 now support DLT_IEEE802_11_RADIO instead
911	of DLT_IEEE802_11.  No user-visible data structures were changed but
912	applications that use DLT_IEEE802_11 may require changes.
913	Bump __FreeBSD_version to 800088.
914
91520090430:
916	The layout of the following structs has changed: sysctl_oid,
917	socket, ifnet, inpcbinfo, tcpcb, syncache_head, vnet_inet,
918	vnet_inet6 and vnet_ipfw.  Most modules need to be rebuild or
919	panics may be experienced.  World rebuild is required for
920	correctly checking networking state from userland.
921	Bump __FreeBSD_version to 800085.
922
92320090429:
924	MLDv2 and Source-Specific Multicast (SSM) have been merged
925	to the IPv6 stack. VIMAGE hooks are in but not yet used.
926	The implementation of SSM within FreeBSD's IPv6 stack closely
927	follows the IPv4 implementation.
928
929	For kernel developers:
930
931	* The most important changes are that the ip6_output() and
932	  ip6_input() paths no longer take the IN6_MULTI_LOCK,
933	  and this lock has been downgraded to a non-recursive mutex.
934
935	* As with the changes to the IPv4 stack to support SSM, filtering
936	  of inbound multicast traffic must now be performed by transport
937	  protocols within the IPv6 stack. This does not apply to TCP and
938	  SCTP, however, it does apply to UDP in IPv6 and raw IPv6.
939
940	* The KPIs used by IPv6 multicast are similar to those used by
941	  the IPv4 stack, with the following differences:
942	   * im6o_mc_filter() is analogous to imo_multicast_filter().
943	   * The legacy KAME entry points in6_joingroup and in6_leavegroup()
944	     are shimmed to in6_mc_join() and in6_mc_leave() respectively.
945	   * IN6_LOOKUP_MULTI() has been deprecated and removed.
946	   * IPv6 relies on MLD for the DAD mechanism. KAME's internal KPIs
947	     for MLDv1 have an additional 'timer' argument which is used to
948	     jitter the initial membership report for the solicited-node
949	     multicast membership on-link.
950	   * This is not strictly needed for MLDv2, which already jitters
951	     its report transmissions.  However, the 'timer' argument is
952	     preserved in case MLDv1 is active on the interface.
953
954	* The KAME linked-list based IPv6 membership implementation has
955	  been refactored to use a vector similar to that used by the IPv4
956	  stack.
957	  Code which maintains a list of its own multicast memberships
958	  internally, e.g. carp, has been updated to reflect the new
959	  semantics.
960
961	* There is a known Lock Order Reversal (LOR) due to in6_setscope()
962	  acquiring the IF_AFDATA_LOCK and being called within ip6_output().
963	  Whilst MLDv2 tries to avoid this otherwise benign LOR, it is an
964	  implementation constraint which needs to be addressed in HEAD.
965
966	For application developers:
967
968	* The changes are broadly similar to those made for the IPv4
969	  stack.
970
971	* The use of IPv4 and IPv6 multicast socket options on the same
972	  socket, using mapped addresses, HAS NOT been tested or supported.
973
974	* There are a number of issues with the implementation of various
975	  IPv6 multicast APIs which need to be resolved in the API surface
976	  before the implementation is fully compatible with KAME userland
977	  use, and these are mostly to do with interface index treatment.
978
979	* The literature available discusses the use of either the delta / ASM
980	  API with setsockopt(2)/getsockopt(2), or the full-state / ASM API
981	  using setsourcefilter(3)/getsourcefilter(3). For more information
982	  please refer to RFC 3768, 'Socket Interface Extensions for
983	  Multicast Source Filters'.
984
985	* Applications which use the published RFC 3678 APIs should be fine.
986
987	For systems administrators:
988
989	* The mtest(8) utility has been refactored to support IPv6, in
990	  addition to IPv4. Interface addresses are no longer accepted
991	  as arguments, their names must be used instead. The utility
992	  will map the interface name to its first IPv4 address as
993	  returned by getifaddrs(3).
994
995	* The ifmcstat(8) utility has also been updated to print the MLDv2
996	  endpoint state and source filter lists via sysctl(3).
997
998	* The net.inet6.ip6.mcast.loop sysctl may be tuned to 0 to disable
999	  loopback of IPv6 multicast datagrams by default; it defaults to 1
1000	  to preserve the existing behaviour. Disabling multicast loopback is
1001	  recommended for optimal system performance.
1002
1003	* The IPv6 MROUTING code has been changed to examine this sysctl
1004	  instead of attempting to perform a group lookup before looping
1005	  back forwarded datagrams.
1006
1007	Bump __FreeBSD_version to 800084.
1008
100920090422:
1010	Implement low-level Bluetooth HCI API.
1011	Bump __FreeBSD_version to 800083.
1012
101320090419:
1014	The layout of struct malloc_type, used by modules to register new
1015	memory allocation types, has changed.  Most modules will need to
1016	be rebuilt or panics may be experienced.
1017	Bump __FreeBSD_version to 800081.
1018
101920090415:
1020	Anticipate overflowing inp_flags - add inp_flags2.
1021	This changes most offsets in inpcb, so checking v4 connection
1022	state will require a world rebuild.
1023	Bump __FreeBSD_version to 800080.
1024
102520090415:
1026	Add an llentry to struct route and struct route_in6. Modules
1027	embedding a struct route will need to be recompiled.
1028	Bump __FreeBSD_version to 800079.
1029
103020090414:
1031	The size of rt_metrics_lite and by extension rtentry has changed.
1032	Networking administration apps will need to be recompiled.
1033	The route command now supports show as an alias for get, weighting
1034	of routes, sticky and nostick flags to alter the behavior of stateful
1035	load balancing.
1036	Bump __FreeBSD_version to 800078.
1037
103820090408:
1039	Do not use Giant for kbdmux(4) locking. This is wrong and
1040	apparently causing more problems than it solves. This will
1041	re-open the issue where interrupt handlers may race with
1042	kbdmux(4) in polling mode. Typical symptoms include (but
1043	not limited to) duplicated and/or missing characters when
1044	low level console functions (such as gets) are used while
1045	interrupts are enabled (for example geli password prompt,
1046	mountroot prompt etc.). Disabling kbdmux(4) may help.
1047
104820090407:
1049	The size of structs vnet_net, vnet_inet and vnet_ipfw has changed;
1050	kernel modules referencing any of the above need to be recompiled.
1051	Bump __FreeBSD_version to 800075.
1052
105320090320:
1054	GEOM_PART has become the default partition slicer for storage devices,
1055	replacing GEOM_MBR, GEOM_BSD, GEOM_PC98 and GEOM_GPT slicers. It
1056	introduces some changes:
1057
1058	MSDOS/EBR: the devices created from MSDOS extended partition entries
1059	(EBR) can be named differently than with GEOM_MBR and are now symlinks
1060	to devices with offset-based names. fstabs may need to be modified.
1061
1062	BSD: the "geometry does not match label" warning is harmless in most
1063	cases but it points to problems in file system misalignment with
1064	disk geometry. The "c" partition is now implicit, covers the whole
1065	top-level drive and cannot be (mis)used by users.
1066
1067	General: Kernel dumps are now not allowed to be written to devices
1068	whose partition types indicate they are meant to be used for file
1069	systems (or, in case of MSDOS partitions, as something else than
1070	the "386BSD" type).
1071
1072	Most of these changes date approximately from 200812.
1073
107420090319:
1075	The uscanner(4) driver has been removed from the kernel. This follows
1076	Linux removing theirs in 2.6 and making libusb the default interface
1077	(supported by sane).
1078
107920090319:
1080	The multicast forwarding code has been cleaned up. netstat(1)
1081	only relies on KVM now for printing bandwidth upcall meters.
1082	The IPv4 and IPv6 modules are split into ip_mroute_mod and
1083	ip6_mroute_mod respectively. The config(5) options for statically
1084	compiling this code remain the same, i.e. 'options MROUTING'.
1085
108620090315:
1087	Support for the IFF_NEEDSGIANT network interface flag has been
1088	removed, which means that non-MPSAFE network device drivers are no
1089	longer supported.  In particular, if_ar, if_sr, and network device
1090	drivers from the old (legacy) USB stack can no longer be built or
1091	used.
1092
109320090313:
1094	POSIX.1 Native Language Support (NLS) has been enabled in libc and
1095	a bunch of new language catalog files have also been added.
1096	This means that some common libc messages are now localized and
1097	they depend on the LC_MESSAGES environmental variable.
1098
109920090313:
1100	The k8temp(4) driver has been renamed to amdtemp(4) since
1101	support for Family 10 and Family 11 CPU families was added.
1102
110320090309:
1104	IGMPv3 and Source-Specific Multicast (SSM) have been merged
1105	to the IPv4 stack. VIMAGE hooks are in but not yet used.
1106
1107	For kernel developers, the most important changes are that the
1108	ip_output() and ip_input() paths no longer take the IN_MULTI_LOCK(),
1109	and this lock has been downgraded to a non-recursive mutex.
1110
1111	Transport protocols (UDP, Raw IP) are now responsible for filtering
1112	inbound multicast traffic according to group membership and source
1113	filters. The imo_multicast_filter() KPI exists for this purpose.
1114	Transports which do not use multicast (SCTP, TCP) already reject
1115	multicast by default. Forwarding and receive performance may improve
1116	as a mutex acquisition is no longer needed in the ip_input()
1117	low-level input path.  in_addmulti() and in_delmulti() are shimmed
1118	to new KPIs which exist to support SSM in-kernel.
1119
1120	For application developers, it is recommended that loopback of
1121	multicast datagrams be disabled for best performance, as this
1122	will still cause the lock to be taken for each looped-back
1123	datagram transmission. The net.inet.ip.mcast.loop sysctl may
1124	be tuned to 0 to disable loopback by default; it defaults to 1
1125	to preserve the existing behaviour.
1126
1127	For systems administrators, to obtain best performance with
1128	multicast reception and multiple groups, it is always recommended
1129	that a card with a suitably precise hash filter is used. Hash
1130	collisions will still result in the lock being taken within the
1131	transport protocol input path to check group membership.
1132
1133	If deploying FreeBSD in an environment with IGMP snooping switches,
1134	it is recommended that the net.inet.igmp.sendlocal sysctl remain
1135	enabled; this forces 224.0.0.0/24 group membership to be announced
1136	via IGMP.
1137
1138	The size of 'struct igmpstat' has changed; netstat needs to be
1139	recompiled to reflect this.
1140	Bump __FreeBSD_version to 800070.
1141
114220090309:
1143	libusb20.so.1 is now installed as libusb.so.1 and the ports system
1144	updated to use it. This requires a buildworld/installworld in order to
1145	update the library and dependencies (usbconfig, etc). Its advisable to
1146	rebuild all ports which uses libusb. More specific directions are given
1147	in the ports collection UPDATING file. Any /etc/libmap.conf entries for
1148	libusb are no longer required and can be removed.
1149
115020090302:
1151	A workaround is committed to allow the creation of System V shared
1152	memory segment of size > 2 GB on the 64-bit architectures.
1153	Due to a limitation of the existing ABI, the shm_segsz member
1154	of the struct shmid_ds, returned by shmctl(IPC_STAT) call is
1155	wrong for large segments. Note that limits must be explicitly
1156	raised to allow such segments to be created.
1157
115820090301:
1159	The layout of struct ifnet has changed, requiring a rebuild of all
1160	network device driver modules.
1161
116220090227:
1163	The /dev handling for the new USB stack has changed, a
1164	buildworld/installworld is required for libusb20.
1165
116620090223:
1167	The new USB2 stack has now been permanently moved in and all kernel and
1168	module names reverted to their previous values (eg, usb, ehci, ohci,
1169	ums, ...).  The old usb stack can be compiled in by prefixing the name
1170	with the letter 'o', the old usb modules have been removed.
1171	Updating entry 20090216 for xorg and 20090215 for libmap may still
1172	apply.
1173
117420090217:
1175	The rc.conf(5) option if_up_delay has been renamed to
1176	defaultroute_delay to better reflect its purpose. If you have
1177	customized this setting in /etc/rc.conf you need to update it to
1178	use the new name.
1179
118020090216:
1181	xorg 7.4 wants to configure its input devices via hald which does not
1182	yet work with USB2. If the keyboard/mouse does not work in xorg then
1183	add
1184		Option "AllowEmptyInput" "off"
1185	to your ServerLayout section.  This will cause X to use the configured
1186	kbd and mouse sections from your xorg.conf.
1187
118820090215:
1189	The GENERIC kernels for all architectures now default to the new USB2
1190	stack. No kernel config options or code have been removed so if a
1191	problem arises please report it and optionally revert to the old USB
1192	stack. If you are loading USB kernel modules or have a custom kernel
1193	that includes GENERIC then ensure that usb names are also changed over,
1194	eg uftdi -> usb2_serial_ftdi.
1195
1196	Older programs linked against the ports libusb 0.1 need to be
1197	redirected to the new stack's libusb20.  /etc/libmap.conf can
1198	be used for this:
1199		# Map old usb library to new one for usb2 stack
1200		libusb-0.1.so.8	libusb20.so.1
1201
120220090209:
1203	All USB ethernet devices now attach as interfaces under the name ueN
1204	(eg. ue0). This is to provide a predictable name as vendors often
1205	change usb chipsets in a product without notice.
1206
120720090203:
1208	The ichsmb(4) driver has been changed to require SMBus slave
1209	addresses be left-justified (xxxxxxx0b) rather than right-justified.
1210	All of the other SMBus controller drivers require left-justified
1211	slave addresses, so this change makes all the drivers provide the
1212	same interface.
1213
121420090201:
1215	INET6 statistics (struct ip6stat) was updated.
1216	netstat(1) needs to be recompiled.
1217
121820090119:
1219	NTFS has been removed from GENERIC kernel on amd64 to match
1220	GENERIC on i386. Should not cause any issues since mount_ntfs(8)
1221	will load ntfs.ko module automatically when NTFS support is
1222	actually needed, unless ntfs.ko is not installed or security
1223	level prohibits loading kernel modules. If either is the case,
1224	"options NTFS" has to be added into kernel config.
1225
122620090115:
1227	TCP Appropriate Byte Counting (RFC 3465) support added to kernel.
1228	New field in struct tcpcb breaks ABI, so bump __FreeBSD_version to
1229	800061. User space tools that rely on the size of struct tcpcb in
1230	tcp_var.h (e.g. sockstat) need to be recompiled.
1231
123220081225:
1233	ng_tty(4) module updated to match the new TTY subsystem.
1234	Due to API change, user-level applications must be updated.
1235	New API support added to mpd5 CVS and expected to be present
1236	in next mpd5.3 release.
1237
123820081219:
1239	With __FreeBSD_version 800060 the makefs tool is part of
1240	the base system (it was a port).
1241
124220081216:
1243	The afdata and ifnet locks have been changed from mutexes to
1244	rwlocks, network modules will need to be re-compiled.
1245
124620081214:
1247	__FreeBSD_version 800059 incorporates the new arp-v2 rewrite.
1248	RTF_CLONING, RTF_LLINFO and RTF_WASCLONED flags are eliminated.
1249	The new code reduced struct rtentry{} by 16 bytes on 32-bit
1250	architecture and 40 bytes on 64-bit architecture. The userland
1251	applications "arp" and "ndp" have been updated accordingly.
1252	The output from "netstat -r" shows only routing entries and
1253	none of the L2 information.
1254
125520081130:
1256	__FreeBSD_version 800057 marks the switchover from the
1257	binary ath hal to source code. Users must add the line:
1258
1259	options	AH_SUPPORT_AR5416
1260
1261	to their kernel config files when specifying:
1262
1263	device	ath_hal
1264
1265	The ath_hal module no longer exists; the code is now compiled
1266	together with the driver in the ath module.  It is now
1267	possible to tailor chip support (i.e. reduce the set of chips
1268	and thereby the code size); consult ath_hal(4) for details.
1269
127020081121:
1271	__FreeBSD_version 800054 adds memory barriers to
1272	<machine/atomic.h>, new interfaces to ifnet to facilitate
1273	multiple hardware transmit queues for cards that support
1274	them, and a lock-less ring-buffer implementation to
1275	enable drivers to more efficiently manage queueing of
1276	packets.
1277
127820081117:
1279	A new version of ZFS (version 13) has been merged to -HEAD.
1280	This version has zpool attribute "listsnapshots" off by
1281	default, which means "zfs list" does not show snapshots,
1282	and is the same as Solaris behavior.
1283
128420081028:
1285	dummynet(4) ABI has changed. ipfw(8) needs to be recompiled.
1286
128720081009:
1288	The uhci, ohci, ehci and slhci USB Host controller drivers have
1289	been put into separate modules. If you load the usb module
1290	separately through loader.conf you will need to load the
1291	appropriate *hci module as well. E.g. for a UHCI-based USB 2.0
1292	controller add the following to loader.conf:
1293
1294		uhci_load="YES"
1295		ehci_load="YES"
1296
129720081009:
1298	The ABI used by the PMC toolset has changed.  Please keep
1299	userland (libpmc(3)) and the kernel module (hwpmc(4)) in
1300	sync.
1301
130220081009:
1303	atapci kernel module now includes only generic PCI ATA
1304	driver. AHCI driver moved to ataahci kernel module.
1305	All vendor-specific code moved into separate kernel modules:
1306	ataacard, ataacerlabs, ataadaptec, ataamd, ataati, atacenatek,
1307	atacypress, atacyrix, atahighpoint, ataintel, ataite, atajmicron,
1308	atamarvell, atamicron, atanational, atanetcell, atanvidia,
1309	atapromise, ataserverworks, atasiliconimage, atasis, atavia
1310
131120080820:
1312	The TTY subsystem of the kernel has been replaced by a new
1313	implementation, which provides better scalability and an
1314	improved driver model. Most common drivers have been migrated to
1315	the new TTY subsystem, while others have not. The following
1316	drivers have not yet been ported to the new TTY layer:
1317
1318	PCI/ISA:
1319		cy, digi, rc, rp, sio
1320
1321	USB:
1322		ubser, ucycom
1323
1324	Line disciplines:
1325		ng_h4, ng_tty, ppp, sl, snp
1326
1327	Adding these drivers to your kernel configuration file shall
1328	cause compilation to fail.
1329
133020080818:
1331	ntpd has been upgraded to 4.2.4p5.
1332
133320080801:
1334	OpenSSH has been upgraded to 5.1p1.
1335
1336	For many years, FreeBSD's version of OpenSSH preferred DSA
1337	over RSA for host and user authentication keys.  With this
1338	upgrade, we've switched to the vendor's default of RSA over
1339	DSA.  This may cause upgraded clients to warn about unknown
1340	host keys even for previously known hosts.  Users should
1341	follow the usual procedure for verifying host keys before
1342	accepting the RSA key.
1343
1344	This can be circumvented by setting the "HostKeyAlgorithms"
1345	option to "ssh-dss,ssh-rsa" in ~/.ssh/config or on the ssh
1346	command line.
1347
1348	Please note that the sequence of keys offered for
1349	authentication has been changed as well.  You may want to
1350	specify IdentityFile in a different order to revert this
1351	behavior.
1352
135320080713:
1354	The sio(4) driver has been removed from the i386 and amd64
1355	kernel configuration files. This means uart(4) is now the
1356	default serial port driver on those platforms as well.
1357
1358	To prevent collisions with the sio(4) driver, the uart(4) driver
1359	uses different names for its device nodes. This means the
1360	onboard serial port will now most likely be called "ttyu0"
1361	instead of "ttyd0". You may need to reconfigure applications to
1362	use the new device names.
1363
1364	When using the serial port as a boot console, be sure to update
1365	/boot/device.hints and /etc/ttys before booting the new kernel.
1366	If you forget to do so, you can still manually specify the hints
1367	at the loader prompt:
1368
1369		set hint.uart.0.at="isa"
1370		set hint.uart.0.port="0x3F8"
1371		set hint.uart.0.flags="0x10"
1372		set hint.uart.0.irq="4"
1373		boot -s
1374
137520080609:
1376	The gpt(8) utility has been removed. Use gpart(8) to partition
1377	disks instead.
1378
137920080603:
1380	The version that Linuxulator emulates was changed from 2.4.2
1381	to 2.6.16. If you experience any problems with Linux binaries
1382	please try to set sysctl compat.linux.osrelease to 2.4.2 and
1383	if it fixes the problem contact emulation mailing list.
1384
138520080525:
1386	ISDN4BSD (I4B) was removed from the src tree. You may need to
1387	update a your kernel configuration and remove relevant entries.
1388
138920080509:
1390	I have checked in code to support multiple routing tables.
1391	See the man pages setfib(1) and setfib(2).
1392	This is a hopefully backwards compatible version,
1393	but to make use of it you need to compile your kernel
1394	with options ROUTETABLES=2 (or more up to 16).
1395
139620080420:
1397	The 802.11 wireless support was redone to enable multi-bss
1398	operation on devices that are capable.  The underlying device
1399	is no longer used directly but instead wlanX devices are
1400	cloned with ifconfig.  This requires changes to rc.conf files.
1401	For example, change:
1402		ifconfig_ath0="WPA DHCP"
1403	to
1404		wlans_ath0=wlan0
1405		ifconfig_wlan0="WPA DHCP"
1406	see rc.conf(5) for more details.  In addition, mergemaster of
1407	/etc/rc.d is highly recommended.  Simultaneous update of userland
1408	and kernel wouldn't hurt either.
1409
1410	As part of the multi-bss changes the wlan_scan_ap and wlan_scan_sta
1411	modules were merged into the base wlan module.  All references
1412	to these modules (e.g. in kernel config files) must be removed.
1413
141420080408:
1415	psm(4) has gained write(2) support in native operation level.
1416	Arbitrary commands can be written to /dev/psm%d and status can
1417	be read back from it.  Therefore, an application is responsible
1418	for status validation and error recovery.  It is a no-op in
1419	other operation levels.
1420
142120080312:
1422	Support for KSE threading has been removed from the kernel.  To
1423	run legacy applications linked against KSE libmap.conf may
1424	be used.  The following libmap.conf may be used to ensure
1425	compatibility with any prior release:
1426
1427	libpthread.so.1 libthr.so.1
1428	libpthread.so.2 libthr.so.2
1429	libkse.so.3 libthr.so.3
1430
143120080301:
1432	The layout of struct vmspace has changed. This affects libkvm
1433	and any executables that link against libkvm and use the
1434	kvm_getprocs() function. In particular, but not exclusively,
1435	it affects ps(1), fstat(1), pkill(1), systat(1), top(1) and w(1).
1436	The effects are minimal, but it's advisable to upgrade world
1437	nonetheless.
1438
143920080229:
1440	The latest em driver no longer has support in it for the
1441	82575 adapter, this is now moved to the igb driver. The
1442	split was done to make new features that are incompatible
1443	with older hardware easier to do.
1444
144520080220:
1446	The new geom_lvm(4) geom class has been renamed to geom_linux_lvm(4),
1447	likewise the kernel option is now GEOM_LINUX_LVM.
1448
144920080211:
1450	The default NFS mount mode has changed from UDP to TCP for
1451	increased reliability.  If you rely on (insecurely) NFS
1452	mounting across a firewall you may need to update your
1453	firewall rules.
1454
145520080208:
1456	Belatedly note the addition of m_collapse for compacting
1457	mbuf chains.
1458
145920080126:
1460	The fts(3) structures have been changed to use adequate
1461	integer types for their members and so to be able to cope
1462	with huge file trees.  The old fts(3) ABI is preserved
1463	through symbol versioning in libc, so third-party binaries
1464	using fts(3) should still work, although they will not take
1465	advantage of the extended types.  At the same time, some
1466	third-party software might fail to build after this change
1467	due to unportable assumptions made in its source code about
1468	fts(3) structure members.  Such software should be fixed
1469	by its vendor or, in the worst case, in the ports tree.
1470	FreeBSD_version 800015 marks this change for the unlikely
1471	case that a portable fix is impossible.
1472
147320080123:
1474	To upgrade to -current after this date, you must be running
1475	FreeBSD not older than 6.0-RELEASE.  Upgrading to -current
1476	from 5.x now requires a stop over at RELENG_6 or RELENG_7 systems.
1477
147820071128:
1479	The ADAPTIVE_GIANT kernel option has been retired because its
1480	functionality is the default now.
1481
148220071118:
1483	The AT keyboard emulation of sunkbd(4) has been turned on
1484	by default. In order to make the special symbols of the Sun
1485	keyboards driven by sunkbd(4) work under X these now have
1486	to be configured the same way as Sun USB keyboards driven
1487	by ukbd(4) (which also does AT keyboard emulation), f.e.:
1488
1489	Option	"XkbLayout" "us"
1490	Option	"XkbRules" "xorg"
1491	Option	"XkbSymbols" "pc(pc105)+sun_vndr/usb(sun_usb)+us"
1492
149320071024:
1494	It has been decided that it is desirable to provide ABI
1495	backwards compatibility to the FreeBSD 4/5/6 versions of the
1496	PCIOCGETCONF, PCIOCREAD and PCIOCWRITE IOCTLs, which was
1497	broken with the introduction of PCI domain support (see the
1498	20070930 entry). Unfortunately, this required the ABI of
1499	PCIOCGETCONF to be broken again in order to be able to
1500	provide backwards compatibility to the old version of that
1501	IOCTL. Thus consumers of PCIOCGETCONF have to be recompiled
1502	again. As for prominent ports this affects neither pciutils
1503	nor xorg-server this time, the hal port needs to be rebuilt
1504	however.
1505
150620071020:
1507	The misnamed kthread_create() and friends have been renamed
1508	to kproc_create() etc. Many of the callers already
1509	used kproc_start()..
1510	I will return kthread_create() and friends in a while
1511	with implementations that actually create threads, not procs.
1512	Renaming corresponds with version 800002.
1513
151420071010:
1515	RELENG_7 branched.
1516
1517COMMON ITEMS:
1518
1519	General Notes
1520	-------------
1521	Avoid using make -j when upgrading.  While generally safe, there are
1522	sometimes problems using -j to upgrade.  If your upgrade fails with
1523	-j, please try again without -j.  From time to time in the past there
1524	have been problems using -j with buildworld and/or installworld.  This
1525	is especially true when upgrading between "distant" versions (eg one
1526	that cross a major release boundary or several minor releases, or when
1527	several months have passed on the -current branch).
1528
1529	Sometimes, obscure build problems are the result of environment
1530	poisoning.  This can happen because the make utility reads its
1531	environment when searching for values for global variables.  To run
1532	your build attempts in an "environmental clean room", prefix all make
1533	commands with 'env -i '.  See the env(1) manual page for more details.
1534
1535	When upgrading from one major version to another it is generally best
1536	to upgrade to the latest code in the currently installed branch first,
1537	then do an upgrade to the new branch. This is the best-tested upgrade
1538	path, and has the highest probability of being successful.  Please try
1539	this approach before reporting problems with a major version upgrade.
1540
1541	ZFS notes
1542	---------
1543	When upgrading the boot ZFS pool to a new version, always follow
1544	these two steps:
1545
1546	1.) recompile and reinstall the ZFS boot loader and boot block
1547	(this is part of "make buildworld" and "make installworld")
1548
1549	2.) update the ZFS boot block on your boot drive
1550
1551	The following example updates the ZFS boot block on the first
1552	partition (freebsd-boot) of a GPT partitioned drive ad0:
1553	"gpart bootcode -p /boot/gptzfsboot -i 1 ad0"
1554
1555	Non-boot pools do not need these updates.
1556
1557	To build a kernel
1558	-----------------
1559	If you are updating from a prior version of FreeBSD (even one just
1560	a few days old), you should follow this procedure.  It is the most
1561	failsafe as it uses a /usr/obj tree with a fresh mini-buildworld,
1562
1563	make kernel-toolchain
1564	make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=YOUR_KERNEL_HERE
1565	make -DALWAYS_CHECK_MAKE installkernel KERNCONF=YOUR_KERNEL_HERE
1566
1567	To test a kernel once
1568	---------------------
1569	If you just want to boot a kernel once (because you are not sure
1570	if it works, or if you want to boot a known bad kernel to provide
1571	debugging information) run
1572	make installkernel KERNCONF=YOUR_KERNEL_HERE KODIR=/boot/testkernel
1573	nextboot -k testkernel
1574
1575	To just build a kernel when you know that it won't mess you up
1576	--------------------------------------------------------------
1577	This assumes you are already running a CURRENT system.  Replace
1578	${arch} with the architecture of your machine (e.g. "i386",
1579	"arm", "amd64", "ia64", "pc98", "sparc64", "powerpc", "mips", etc).
1580
1581	cd src/sys/${arch}/conf
1582	config KERNEL_NAME_HERE
1583	cd ../compile/KERNEL_NAME_HERE
1584	make depend
1585	make
1586	make install
1587
1588	If this fails, go to the "To build a kernel" section.
1589
1590	To rebuild everything and install it on the current system.
1591	-----------------------------------------------------------
1592	# Note: sometimes if you are running current you gotta do more than
1593	# is listed here if you are upgrading from a really old current.
1594
1595	<make sure you have good level 0 dumps>
1596	make buildworld
1597	make kernel KERNCONF=YOUR_KERNEL_HERE
1598							[1]
1599	<reboot in single user>				[3]
1600	mergemaster -p					[5]
1601	make installworld
1602	mergemaster -i					[4]
1603	make delete-old					[6]
1604	<reboot>
1605
1606
1607	To cross-install current onto a separate partition
1608	--------------------------------------------------
1609	# In this approach we use a separate partition to hold
1610	# current's root, 'usr', and 'var' directories.   A partition
1611	# holding "/", "/usr" and "/var" should be about 2GB in
1612	# size.
1613
1614	<make sure you have good level 0 dumps>
1615	<boot into -stable>
1616	make buildworld
1617	make buildkernel KERNCONF=YOUR_KERNEL_HERE
1618	<maybe newfs current's root partition>
1619	<mount current's root partition on directory ${CURRENT_ROOT}>
1620	make installworld DESTDIR=${CURRENT_ROOT}
1621	make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd
1622	make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT}
1623	cp /etc/fstab ${CURRENT_ROOT}/etc/fstab 		   # if newfs'd
1624	<edit ${CURRENT_ROOT}/etc/fstab to mount "/" from the correct partition>
1625	<reboot into current>
1626	<do a "native" rebuild/install as described in the previous section>
1627	<maybe install compatibility libraries from ports/misc/compat*>
1628	<reboot>
1629
1630
1631	To upgrade in-place from stable to current
1632	----------------------------------------------
1633	<make sure you have good level 0 dumps>
1634	make buildworld					[9]
1635	make kernel KERNCONF=YOUR_KERNEL_HERE		[8]
1636							[1]
1637	<reboot in single user>				[3]
1638	mergemaster -p					[5]
1639	make installworld
1640	mergemaster -i					[4]
1641	make delete-old					[6]
1642	<reboot>
1643
1644	Make sure that you've read the UPDATING file to understand the
1645	tweaks to various things you need.  At this point in the life
1646	cycle of current, things change often and you are on your own
1647	to cope.  The defaults can also change, so please read ALL of
1648	the UPDATING entries.
1649
1650	Also, if you are tracking -current, you must be subscribed to
1651	freebsd-current@freebsd.org.  Make sure that before you update
1652	your sources that you have read and understood all the recent
1653	messages there.  If in doubt, please track -stable which has
1654	much fewer pitfalls.
1655
1656	[1] If you have third party modules, such as vmware, you
1657	should disable them at this point so they don't crash your
1658	system on reboot.
1659
1660	[3] From the bootblocks, boot -s, and then do
1661		fsck -p
1662		mount -u /
1663		mount -a
1664		cd src
1665		adjkerntz -i		# if CMOS is wall time
1666	Also, when doing a major release upgrade, it is required that
1667	you boot into single user mode to do the installworld.
1668
1669	[4] Note: This step is non-optional.  Failure to do this step
1670	can result in a significant reduction in the functionality of the
1671	system.  Attempting to do it by hand is not recommended and those
1672	that pursue this avenue should read this file carefully, as well
1673	as the archives of freebsd-current and freebsd-hackers mailing lists
1674	for potential gotchas.  The -U option is also useful to consider.
1675	See mergemaster(8) for more information.
1676
1677	[5] Usually this step is a noop.  However, from time to time
1678	you may need to do this if you get unknown user in the following
1679	step.  It never hurts to do it all the time.  You may need to
1680	install a new mergemaster (cd src/usr.sbin/mergemaster && make
1681	install) after the buildworld before this step if you last updated
1682	from [78]-stable or 9-stable before 20130430.
1683
1684	[6] This only deletes old files and directories. Old libraries
1685	can be deleted by "make delete-old-libs", but you have to make
1686	sure that no program is using those libraries anymore.
1687
1688	[8] In order to have a kernel that can run the 4.x binaries needed to
1689	do an installworld, you must include the COMPAT_FREEBSD4 option in
1690	your kernel.  Failure to do so may leave you with a system that is
1691	hard to boot to recover. A similar kernel option COMPAT_FREEBSD5 is
1692	required to run the 5.x binaries on more recent kernels.  And so on
1693	for COMPAT_FREEBSD6 and COMPAT_FREEBSD7.
1694
1695	Make sure that you merge any new devices from GENERIC since the
1696	last time you updated your kernel config file.
1697
1698	[9] When checking out sources, you must include the -P flag to have
1699	cvs prune empty directories.
1700
1701	If CPUTYPE is defined in your /etc/make.conf, make sure to use the
1702	"?=" instead of the "=" assignment operator, so that buildworld can
1703	override the CPUTYPE if it needs to.
1704
1705	MAKEOBJDIRPREFIX must be defined in an environment variable, and
1706	not on the command line, or in /etc/make.conf.  buildworld will
1707	warn if it is improperly defined.
1708FORMAT:
1709
1710This file contains a list, in reverse chronological order, of major
1711breakages in tracking -current.  It is not guaranteed to be a complete
1712list of such breakages, and only contains entries since October 10, 2007.
1713If you need to see UPDATING entries from before that date, you will need
1714to fetch an UPDATING file from an older FreeBSD release.
1715
1716Copyright information:
1717
1718Copyright 1998-2009 M. Warner Losh.  All Rights Reserved.
1719
1720Redistribution, publication, translation and use, with or without
1721modification, in full or in part, in any form or format of this
1722document are permitted without further permission from the author.
1723
1724THIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
1725IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
1726WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
1727DISCLAIMED.  IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
1728INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
1729(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
1730SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
1731HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
1732STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
1733IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
1734POSSIBILITY OF SUCH DAMAGE.
1735
1736Contact Warner Losh if you have any questions about your use of
1737this document.
1738
1739$FreeBSD: releng/9.3/UPDATING 276157 2014-12-23 22:54:25Z des $
1740