1999-01-14 05:59:52 +00:00
|
|
|
Updating Information for FreeBSD current users
|
|
|
|
|
2001-06-29 06:00:44 +00:00
|
|
|
This file is maintained and copyrighted by M. Warner Losh
|
2002-04-11 05:45:17 +00:00
|
|
|
<imp@village.org>. See end of file for further details. For commonly
|
|
|
|
done items, please see the COMMON ITEMS: section later in the file.
|
2001-06-29 06:00:44 +00:00
|
|
|
|
2004-07-29 15:06:19 +00:00
|
|
|
Items affecting the ports and packages system can be found in
|
|
|
|
/usr/ports/UPDATING. Please read that file before running
|
2005-03-03 08:44:33 +00:00
|
|
|
portupgrade.
|
2004-07-29 15:06:19 +00:00
|
|
|
|
2007-10-11 04:28:08 +00:00
|
|
|
NOTE TO PEOPLE WHO THINK THAT FreeBSD 8.x IS SLOW:
|
|
|
|
FreeBSD 8.x has many debugging features turned on, in
|
2002-02-28 05:31:02 +00:00
|
|
|
both the kernel and userland. These features attempt to detect
|
|
|
|
incorrect use of system primitives, and encourage loud failure
|
|
|
|
through extra sanity checking and fail stop semantics. They
|
|
|
|
also substantially impact system performance. If you want to
|
|
|
|
do performance measurement, benchmarking, and optimization,
|
|
|
|
you'll want to turn them off. This includes various WITNESS-
|
|
|
|
related kernel options, INVARIANTS, malloc debugging flags
|
|
|
|
in userland, and various verbose features in the kernel. Many
|
|
|
|
developers choose to disable these features on build machines
|
2008-01-22 15:05:22 +00:00
|
|
|
to maximize performance. (To disable malloc debugging, run
|
|
|
|
ln -s aj /etc/malloc.conf.)
|
2006-11-15 20:02:20 +00:00
|
|
|
|
2008-02-08 21:24:58 +00:00
|
|
|
20080208:
|
|
|
|
Belatedly note the addition of m_collapse for compacting
|
|
|
|
mbuf chains.
|
|
|
|
|
Our fts(3) API, as inherited from 4.4BSD, suffers from integer
fields in FTS and FTSENT structs being too narrow. In addition,
the narrow types creep from there into fts.c. As a result, fts(3)
consumers, e.g., find(1) or rm(1), can't handle file trees an ordinary
user can create, which can have security implications.
To fix the historic implementation of fts(3), OpenBSD and NetBSD
have already changed <fts.h> in somewhat incompatible ways, so we
are free to do so, too. This change is a superset of changes from
the other BSDs with a few more improvements. It doesn't touch
fts(3) functionality; it just extends integer types used by it to
match modern reality and the C standard.
Here are its points:
o For C object sizes, use size_t unless it's 100% certain that
the object will be really small. (Note that fts(3) can construct
pathnames _much_ longer than PATH_MAX for its consumers.)
o Avoid the short types because on modern platforms using them
results in larger and slower code. Change shorts to ints as
follows:
- For variables than count simple, limited things like states,
use plain vanilla `int' as it's the type of choice in C.
- For a limited number of bit flags use `unsigned' because signed
bit-wise operations are implementation-defined, i.e., unportable,
in C.
o For things that should be at least 64 bits wide, use long long
and not int64_t, as the latter is an optional type. See
FTSENT.fts_number aka FTS.fts_bignum. Extending fts_number `to
satisfy future needs' is pointless because there is fts_pointer,
which can be used to link to arbitrary data from an FTSENT.
However, there already are fts(3) consumers that require fts_number,
or fts_bignum, have at least 64 bits in it, so we must allow for them.
o For the tree depth, use `long'. This is a trade-off between making
this field too wide and allowing for 64-bit inode numbers and/or
chain-mounted filesystems. On the one hand, `long' is almost
enough for 32-bit filesystems on a 32-bit platform (our ino_t is
uint32_t now). On the other hand, platforms with a 64-bit (or
wider) `long' will be ready for 64-bit inode numbers, as well as
for several 32-bit filesystems mounted one under another. Note
that fts_level has to be signed because -1 is a magic value for it,
FTS_ROOTPARENTLEVEL.
o For the `nlinks' local var in fts_build(), use `long'. The logic
in fts_build() requires that `nlinks' be signed, but our nlink_t
currently is uint16_t. Therefore let's make the signed var wide
enough to be able to represent 2^16-1 in pure C99, and even 2^32-1
on a 64-bit platform. Perhaps the logic should be changed just
to use nlink_t, but it can be done later w/o breaking fts(3) ABI
any more because `nlinks' is just a local var.
This commit also inludes supporting stuff for the fts change:
o Preserve the old versions of fts(3) functions through libc symbol
versioning because the old versions appeared in all our former releases.
o Bump __FreeBSD_version just in case. There is a small chance that
some ill-written 3-rd party apps may fail to build or work correctly
if compiled after this change.
o Update the fts(3) manpage accordingly. In particular, remove
references to fts_bignum, which was a FreeBSD-specific hack to work
around the too narrow types of FTSENT members. Now fts_number is
at least 64 bits wide (long long) and fts_bignum is an undocumented
alias for fts_number kept around for compatibility reasons. According
to Google Code Search, the only big consumers of fts_bignum are in
our own source tree, so they can be fixed easily to use fts_number.
o Mention the change in src/UPDATING.
PR: bin/104458
Approved by: re (quite a while ago)
Discussed with: deischen (the symbol versioning part)
Reviewed by: -arch (mostly silence); das (generally OK, but we didn't
agree on some types used; assuming that no objections on
-arch let me to stick to my opinion)
2008-01-26 17:09:40 +00:00
|
|
|
20080126:
|
|
|
|
The fts(3) structures have been changed to use adequate
|
|
|
|
integer types for their members and so to be able to cope
|
|
|
|
with huge file trees. The old fts(3) ABI is preserved
|
|
|
|
through symbol versioning in libc, so third-party binaries
|
|
|
|
using fts(3) should still work, although they will not take
|
|
|
|
advantage of the extended types. At the same time, some
|
|
|
|
third-party software might fail to build after this change
|
|
|
|
due to unportable assumptions made in its source code about
|
|
|
|
fts(3) structure members. Such software should be fixed
|
|
|
|
by its vendor or, in the worst case, in the ports tree.
|
|
|
|
FreeBSD_version 800015 marks this change for the unlikely
|
|
|
|
case that a portable fix is impossible.
|
|
|
|
|
2008-01-23 22:21:36 +00:00
|
|
|
20080123:
|
2008-01-21 22:04:37 +00:00
|
|
|
To upgrade to -current after this date, you must be running
|
2008-01-23 22:21:36 +00:00
|
|
|
FreeBSD not older than 6.0-RELEASE. Upgrading to -current
|
2008-01-21 22:04:37 +00:00
|
|
|
from 5.x now requires a stop over at RELENG_6 or RELENG_7 systems.
|
|
|
|
|
2007-11-28 13:04:11 +00:00
|
|
|
20071128:
|
|
|
|
The ADAPTIVE_GIANT kernel option has been retired because its
|
|
|
|
functionality is the default now.
|
|
|
|
|
2007-11-18 18:11:16 +00:00
|
|
|
20071118:
|
|
|
|
The AT keyboard emulation of sunkbd(4) has been turned on
|
|
|
|
by default. In order to make the special symbols of the Sun
|
|
|
|
keyboards driven by sunkbd(4) work under X these now have
|
|
|
|
to be configured the same way as Sun USB keyboards driven
|
|
|
|
by ukbd(4) (which also does AT keyboard emulation), f.e.:
|
|
|
|
|
|
|
|
Option "XkbLayout" "us"
|
|
|
|
Option "XkbRules" "xorg"
|
|
|
|
Option "XkbSymbols" "pc(pc105)+sun_vndr/usb(sun_usb)+us"
|
|
|
|
|
2007-10-24 20:51:44 +00:00
|
|
|
20071024:
|
|
|
|
It has been decided that it is desirable to provide ABI
|
|
|
|
backwards compatibility to the FreeBSD 4/5/6 versions of the
|
|
|
|
PCIOCGETCONF, PCIOCREAD and PCIOCWRITE IOCTLs, which was
|
|
|
|
broken with the introduction of PCI domain support (see the
|
|
|
|
20070930 entry). Unfortunately, this required the ABI of
|
|
|
|
PCIOCGETCONF to be broken again in order to be able to
|
|
|
|
provide backwards compatibility to the old version of that
|
|
|
|
IOCTL. Thus consumers of PCIOCGETCONF have to be recompiled
|
|
|
|
again. As for prominent ports this affects neither pciutils
|
|
|
|
nor xorg-server this time, the hal port needs to be rebuilt
|
|
|
|
however.
|
|
|
|
|
2007-10-21 04:27:07 +00:00
|
|
|
20071020:
|
|
|
|
The misnamed kthread_create() and friends have been renamed
|
|
|
|
to kproc_create() etc. Many of the callers already
|
|
|
|
used kproc_start()..
|
|
|
|
I will return kthread_create() and friends in a while
|
|
|
|
with implementations that actually create threads, not procs.
|
|
|
|
Renaming corresponds with version 800002.
|
|
|
|
|
2007-10-11 04:28:08 +00:00
|
|
|
20071010:
|
|
|
|
RELENG_7 branched.
|
|
|
|
|
2007-10-09 17:51:11 +00:00
|
|
|
20071009:
|
2007-10-09 13:42:34 +00:00
|
|
|
Setting WITHOUT_LIBPTHREAD now means WITHOUT_LIBKSE and
|
|
|
|
WITHOUT_LIBTHR are set.
|
|
|
|
|
2007-09-30 11:05:18 +00:00
|
|
|
20070930:
|
|
|
|
The PCI code has been made aware of PCI domains. This means that
|
|
|
|
the location strings as used by pciconf(8) etc are now in the
|
|
|
|
following format: pci<domain>:<bus>:<device>[:<function>]. It
|
|
|
|
also means that consumers of <sys/pciio.h> potentially need to
|
|
|
|
be recompiled; this includes the hal and xorg-server ports.
|
|
|
|
|
2007-09-28 10:38:08 +00:00
|
|
|
20070928:
|
|
|
|
The caching daemon (cached) was renamed to nscd. nscd.conf
|
|
|
|
configuration file should be used instead of cached.conf and
|
|
|
|
nscd_enable, nscd_pidfile and nscd_flags options should be used
|
|
|
|
instead of cached_enable, cached_pidfile and cached_flags in
|
|
|
|
rc.conf.
|
|
|
|
|
2007-10-12 04:48:58 +00:00
|
|
|
20070921:
|
|
|
|
The getfacl(1) utility now prints owning user and group name
|
|
|
|
instead of owning uid and gid in the three line comment header.
|
|
|
|
This is the same behavior as getfacl(1) on Solaris and Linux.
|
|
|
|
|
2007-07-04 21:47:23 +00:00
|
|
|
20070704:
|
|
|
|
The new IPsec code is now compiled in using the IPSEC option. The
|
|
|
|
IPSEC option now requires "device crypto" be defined in your kernel
|
|
|
|
configuration. The FAST_IPSEC kernel option is now deprecated.
|
|
|
|
|
2007-07-03 13:06:45 +00:00
|
|
|
20070702:
|
|
|
|
The packet filter (pf) code has been updated to OpenBSD 4.1 Please
|
|
|
|
note the changed syntax - keep state is now on by default. Also
|
|
|
|
note the fact that ftp-proxy(8) has been changed from bottom up and
|
|
|
|
has been moved from libexec to usr/sbin. Changes in the ALTQ
|
|
|
|
handling also affect users of IPFW's ALTQ capabilities.
|
|
|
|
|
2007-07-01 11:41:27 +00:00
|
|
|
20070701:
|
|
|
|
Remove KAME IPsec in favor of FAST_IPSEC, which is now the
|
|
|
|
only IPsec supported by FreeBSD. The new IPsec stack
|
|
|
|
supports both IPv4 and IPv6. The kernel option will change
|
|
|
|
after the code changes have settled in. For now the kernel
|
|
|
|
option IPSEC is deprecated and FAST_IPSEC is the only option, that
|
|
|
|
will change after some settling time.
|
|
|
|
|
2007-07-01 10:25:07 +00:00
|
|
|
20070701:
|
|
|
|
The wicontrol(8) utility has been removed from the base system. wi(4)
|
|
|
|
cards should be configured using ifconfig(8), see the man page for more
|
|
|
|
information.
|
|
|
|
|
2007-07-09 01:13:00 +00:00
|
|
|
20070612:
|
2007-07-06 06:35:50 +00:00
|
|
|
The i386/amd64 GENERIC kernel now defaults to the nfe(4) driver
|
|
|
|
instead of the nve(4) driver. Please update your configuration
|
|
|
|
accordingly.
|
|
|
|
|
2007-06-12 17:33:23 +00:00
|
|
|
20070612:
|
|
|
|
By default, /etc/rc.d/sendmail no longer rebuilds the aliases
|
|
|
|
database if it is missing or older than the aliases file. If
|
|
|
|
desired, set the new rc.conf option sendmail_rebuild_aliases
|
|
|
|
to "YES" to restore that functionality.
|
|
|
|
|
Import rewrite of IPv4 socket multicast layer to support source-specific
and protocol-independent host mode multicast. The code is written to
accomodate IPv6, IGMPv3 and MLDv2 with only a little additional work.
This change only pertains to FreeBSD's use as a multicast end-station and
does not concern multicast routing; for an IGMPv3/MLDv2 router
implementation, consider the XORP project.
The work is based on Wilbert de Graaf's IGMPv3 code drop for FreeBSD 4.6,
which is available at: http://www.kloosterhof.com/wilbert/igmpv3.html
Summary
* IPv4 multicast socket processing is now moved out of ip_output.c
into a new module, in_mcast.c.
* The in_mcast.c module implements the IPv4 legacy any-source API in
terms of the protocol-independent source-specific API.
* Source filters are lazy allocated as the common case does not use them.
They are part of per inpcb state and are covered by the inpcb lock.
* struct ip_mreqn is now supported to allow applications to specify
multicast joins by interface index in the legacy IPv4 any-source API.
* In UDP, an incoming multicast datagram only requires that the source
port matches the 4-tuple if the socket was already bound by source port.
An unbound socket SHOULD be able to receive multicasts sent from an
ephemeral source port.
* The UDP socket multicast filter mode defaults to exclusive, that is,
sources present in the per-socket list will be blocked from delivery.
* The RFC 3678 userland functions have been added to libc: setsourcefilter,
getsourcefilter, setipv4sourcefilter, getipv4sourcefilter.
* Definitions for IGMPv3 are merged but not yet used.
* struct sockaddr_storage is now referenced from <netinet/in.h>. It
is therefore defined there if not already declared in the same way
as for the C99 types.
* The RFC 1724 hack (specify 0.0.0.0/8 addresses to IP_MULTICAST_IF
which are then interpreted as interface indexes) is now deprecated.
* A patch for the Rhyolite.com routed in the FreeBSD base system
is available in the -net archives. This only affects individuals
running RIPv1 or RIPv2 via point-to-point and/or unnumbered interfaces.
* Make IPv6 detach path similar to IPv4's in code flow; functionally same.
* Bump __FreeBSD_version to 700048; see UPDATING.
This work was financially supported by another FreeBSD committer.
Obtained from: p4://bms_netdev
Submitted by: Wilbert de Graaf (original work)
Reviewed by: rwatson (locking), silence from fenner,
net@ (but with encouragement)
2007-06-12 16:24:56 +00:00
|
|
|
20070612:
|
|
|
|
The IPv4 multicast socket code has been considerably modified, and
|
|
|
|
moved to the file sys/netinet/in_mcast.c. Initial support for the
|
|
|
|
RFC 3678 Source-Specific Multicast Socket API has been added to
|
|
|
|
the IPv4 network stack.
|
|
|
|
|
|
|
|
Strict multicast and broadcast reception is now the default for
|
|
|
|
UDP/IPv4 sockets; the net.inet.udp.strict_mcast_mship sysctl variable
|
|
|
|
has now been removed.
|
|
|
|
|
|
|
|
The RFC 1724 hack for interface selection has been removed; the use
|
|
|
|
of the Linux-derived ip_mreqn structure with IP_MULTICAST_IF has
|
|
|
|
been added to replace it. Consumers such as routed will soon be
|
|
|
|
updated to reflect this.
|
|
|
|
|
|
|
|
These changes affect users who are running routed(8) or rdisc(8)
|
|
|
|
from the FreeBSD base system on point-to-point or unnumbered
|
|
|
|
interfaces.
|
|
|
|
|
2007-06-11 04:06:50 +00:00
|
|
|
20070610:
|
|
|
|
The net80211 layer has changed significantly and all wireless
|
|
|
|
drivers that depend on it need to be recompiled. Further these
|
|
|
|
changes require that any program that interacts with the wireless
|
|
|
|
support in the kernel be recompiled; this includes: ifconfig,
|
|
|
|
wpa_supplicant, hostapd, and wlanstats. Users must also, for
|
|
|
|
the moment, kldload the wlan_scan_sta and/or wlan_scan_ap modules
|
|
|
|
if they use modules for wireless support. These modules implement
|
|
|
|
scanning support for station and ap modes, respectively. Failure
|
|
|
|
to load the appropriate module before marking a wireless interface
|
|
|
|
up will result in a message to the console and the device not
|
|
|
|
operating properly.
|
|
|
|
|
2007-06-10 18:57:20 +00:00
|
|
|
20070610:
|
|
|
|
The pam_nologin(8) module ceases to provide an authentication
|
|
|
|
function and starts providing an account management function.
|
|
|
|
Consequent changes to /etc/pam.d should be brought in using
|
|
|
|
mergemaster(8). Third-party files in /usr/local/etc/pam.d may
|
|
|
|
need manual editing as follows. Locate this line (or similar):
|
|
|
|
|
|
|
|
auth required pam_nologin.so no_warn
|
|
|
|
|
|
|
|
and change it according to this example:
|
|
|
|
|
|
|
|
account required pam_nologin.so no_warn
|
|
|
|
|
|
|
|
That is, the first word needs to be changed from "auth" to
|
|
|
|
"account". The new line can be moved to the account section
|
|
|
|
within the file for clarity. Not updating pam.conf(5) files
|
|
|
|
will result in nologin(5) ignored by the respective services.
|
|
|
|
|
2007-05-29 12:40:45 +00:00
|
|
|
20070529:
|
|
|
|
The ether_ioctl() function has been synchronized with ioctl(2)
|
|
|
|
and ifnet.if_ioctl. Due to that, the size of one of its arguments
|
|
|
|
has changed on 64-bit architectures. All kernel modules using
|
|
|
|
ether_ioctl() need to be rebuilt on such architectures.
|
|
|
|
|
2007-05-16 17:23:54 +00:00
|
|
|
20070516:
|
|
|
|
Improved INCLUDE_CONFIG_FILE support has been introduced to the
|
|
|
|
config(8) utility. In order to take advantage of this new
|
|
|
|
functionality, you are expected to recompile and install
|
|
|
|
src/usr.sbin/config. If you don't rebuild config(8), and your
|
|
|
|
kernel configuration depends on INCLUDE_CONFIG_FILE, the kernel
|
|
|
|
build will be broken because of a missing "kernconfstring"
|
|
|
|
symbol.
|
|
|
|
|
2007-05-13 14:41:48 +00:00
|
|
|
20070513:
|
|
|
|
Symbol versioning is enabled by default. To disable it, use
|
|
|
|
option WITHOUT_SYMVER. It is not advisable to attempt to
|
|
|
|
disable symbol versioning once it is enabled; your installworld
|
|
|
|
will break because a symbol version-less libc will get installed
|
|
|
|
before the install tools. As a result, the old install tools,
|
|
|
|
which previously had symbol dependencies to FBSD_1.0, will fail
|
|
|
|
because the freshly installed libc will not have them.
|
|
|
|
|
2007-10-09 13:42:34 +00:00
|
|
|
The default threading library (providing "libpthread") has been
|
|
|
|
changed to libthr. If you wish to have libkse as your default,
|
|
|
|
use option DEFAULT_THREAD_LIB=libkse for the buildworld.
|
2007-05-13 14:41:48 +00:00
|
|
|
|
2007-04-23 22:15:07 +00:00
|
|
|
20070423:
|
2007-06-12 17:33:56 +00:00
|
|
|
The ABI breakage in sendmail(8)'s libmilter has been repaired
|
|
|
|
so it is no longer necessary to recompile mail filters (aka,
|
|
|
|
milters). If you recompiled mail filters after the 20070408
|
|
|
|
note, it is not necessary to recompile them again.
|
2007-04-23 22:15:07 +00:00
|
|
|
|
2007-04-17 00:41:59 +00:00
|
|
|
20070417:
|
|
|
|
The new trunk(4) driver has been renamed to lagg(4) as it better
|
|
|
|
reflects its purpose. ifconfig will need to be recompiled.
|
|
|
|
|
2007-04-14 16:26:01 +00:00
|
|
|
20070408:
|
|
|
|
sendmail(8) has been updated to version 8.14.1. Mail filters
|
|
|
|
(aka, milters) compiled against the libmilter included in the
|
|
|
|
base operating system should be recompiled.
|
|
|
|
|
2007-03-02 14:56:15 +00:00
|
|
|
20070302:
|
|
|
|
Firmwares for ipw(4) and iwi(4) are now included in the base tree.
|
|
|
|
In order to use them one must agree to the respective LICENSE in
|
2007-04-03 10:04:54 +00:00
|
|
|
share/doc/legal and define legal.intel_<name>.license_ack=1 via
|
2007-04-01 17:49:27 +00:00
|
|
|
loader.conf(5) or kenv(1). Make sure to deinstall the now
|
|
|
|
deprecated modules from the respective firmware ports.
|
2007-03-02 14:56:15 +00:00
|
|
|
|
2007-02-28 21:33:40 +00:00
|
|
|
20070228:
|
|
|
|
The name resolution/mapping functions addr2ascii(3) and ascii2addr(3)
|
|
|
|
were removed from FreeBSD's libc. These originally came from INRIA
|
|
|
|
IPv6. Nothing in FreeBSD ever used them. They may be regarded as
|
|
|
|
deprecated in previous releases.
|
|
|
|
The AF_LINK support for getnameinfo(3) was merged from NetBSD to
|
|
|
|
replace it as a more portable (and re-entrant) API.
|
|
|
|
|
2007-02-24 19:45:09 +00:00
|
|
|
20070224:
|
|
|
|
To support interrupt filtering a modification to the newbus API
|
2007-02-24 20:15:04 +00:00
|
|
|
has occurred, ABI was broken and __FreeBSD_version was bumped
|
|
|
|
to 700031. Please make sure that your kernel and modules are in
|
2007-02-24 21:59:18 +00:00
|
|
|
sync. For more info:
|
|
|
|
http://docs.freebsd.org/cgi/mid.cgi?20070221233124.GA13941
|
2007-02-24 19:45:09 +00:00
|
|
|
|
2007-02-24 11:41:05 +00:00
|
|
|
20070224:
|
|
|
|
The IPv6 multicast forwarding code may now be loaded into GENERIC
|
2007-02-24 21:21:53 +00:00
|
|
|
kernels by loading the ip_mroute.ko module. This is built into the
|
|
|
|
module unless WITHOUT_INET6 or WITHOUT_INET6_SUPPORT options are
|
|
|
|
set; see src.conf(5) for more information.
|
2007-02-24 11:41:05 +00:00
|
|
|
|
2007-02-14 14:17:01 +00:00
|
|
|
20070214:
|
|
|
|
The output of netstat -r has changed. Without -n, we now only
|
|
|
|
print a "network name" without the prefix length if the network
|
|
|
|
address and mask exactly match a Class A/B/C network, and an entry
|
|
|
|
exists in the nsswitch "networks" map.
|
|
|
|
With -n, we print the full unabbreviated CIDR network prefix in
|
|
|
|
the form "a.b.c.d/p". 0.0.0.0/0 is always printed as "default".
|
|
|
|
This change is in preparation for changes such as equal-cost
|
|
|
|
multipath, and to more generally assist operational deployment
|
|
|
|
of FreeBSD as a modern IPv4 router.
|
|
|
|
|
2007-02-10 13:59:13 +00:00
|
|
|
20070210:
|
|
|
|
PIM has been turned on by default in the IPv4 multicast
|
|
|
|
routing code. The kernel option 'PIM' has now been removed.
|
|
|
|
PIM is now built by default if option 'MROUTING' is specified.
|
|
|
|
It may now be loaded into GENERIC kernels by loading the
|
|
|
|
ip_mroute.ko module.
|
|
|
|
|
2007-02-07 16:04:13 +00:00
|
|
|
20070207:
|
|
|
|
Support for IPIP tunnels (VIFF_TUNNEL) in IPv4 multicast routing
|
|
|
|
has been removed. Its functionality may be achieved by explicitly
|
|
|
|
configuring gif(4) interfaces and using the 'phyint' keyword in
|
|
|
|
mrouted.conf.
|
|
|
|
XORP does not support source-routed IPv4 multicast tunnels nor the
|
|
|
|
integrated IPIP tunneling, therefore it is not affected by this
|
|
|
|
change. The __FreeBSD_version macro has been bumped to 700030.
|
|
|
|
|
2006-12-22 03:03:31 +00:00
|
|
|
20061221:
|
|
|
|
Support for PCI Message Signalled Interrupts has been
|
|
|
|
re-enabled in the bge driver, only for those chips which are
|
|
|
|
believed to support it properly. If there are any problems,
|
|
|
|
MSI can be disabled completely by setting the
|
|
|
|
'hw.pci.enable_msi' and 'hw.pci.enable_msix' tunables to 0
|
|
|
|
in the loader.
|
|
|
|
|
2006-12-15 00:30:37 +00:00
|
|
|
20061214:
|
|
|
|
Support for PCI Message Signalled Interrupts has been
|
|
|
|
disabled again in the bge driver. Many revisions of the
|
|
|
|
hardware fail to support it properly. Support can be
|
|
|
|
re-enabled by removing the #define of BGE_DISABLE_MSI in
|
|
|
|
"src/sys/dev/bge/if_bge.c".
|
|
|
|
|
2006-12-14 23:10:59 +00:00
|
|
|
20061214:
|
|
|
|
Support for PCI Message Signalled Interrupts has been added
|
|
|
|
to the bge driver. If there are any problems, MSI can be
|
|
|
|
disabled completely by setting the 'hw.pci.enable_msi' and
|
|
|
|
'hw.pci.enable_msix' tunables to 0 in the loader.
|
|
|
|
|
2006-12-06 06:39:47 +00:00
|
|
|
20061205:
|
|
|
|
The removal of several facets of the experimental Threading
|
|
|
|
system from the kernel means that the proc and thread structures
|
|
|
|
have changed quite a bit. I suggest all kernel modules that might
|
|
|
|
reference these structures be recompiled.. Especially the
|
|
|
|
linux module.
|
|
|
|
|
Welcome to Once-a-year Sound Mega-Commit. Enjoy numerous updates and fixes
in every sense.
General
-------
- Multichannel safe, endian safe, format safe
* Large part of critical pcm filters such as vchan.c, feeder_rate.c,
feeder_volume.c, feeder_fmt.c and feeder.c has been rewritten so that
using them does not cause the pcm data to be converted to 16bit little
endian.
* Macrosses for accessing pcm data safely are defined within sound.h in
the form of PCM_READ_* / PCM_WRITE_*
* Currently, most of them are probably limited for mono/stereo handling,
but the future addition of true multichannel will be much easier.
- Low latency operation
* Well, this require lot more works to do not just within sound driver,
but we're heading towards right direction. Buffer/block sizing within
channel.c is rewritten to calculate precise allocation for various
combination of sample/data/rate size. As a result, applying correct
SNDCTL_DSP_POLICY value will achive expected latency behaviour simmilar
to what commercial 4front driver do.
* Signal handling fix. ctrl+c of "cat /dev/zero > /dev/dsp" does not
result long delay.
* Eliminate sound truncation if the sound data is too small.
DIY:
1) Download / extract
http://people.freebsd.org/~ariff/lowlatency/shortfiles.tar.gz
2) Do a comparison between "cat state*.au > /dev/dsp" and
"for x in state*.au ; do cat $x > /dev/dsp ; done"
- there should be no "perceivable" differences.
Double close for PR kern/31445.
CAVEAT: Low latency come with (unbearable) price especially for poorly
written applications. Applications that trying to act smarter
by requesting (wrong) blocksize/blockcount will suffer the most.
Fixup samples/patches can be found at:
http://people.freebsd.org/~ariff/ports/
- Switch minimum/maximum sampling rate limit to "1" and "2016000" (48k * 42)
due to closer compatibility with 4front driver.
Discussed with: marcus@ (long time ago?)
- All driver specific sysctls in the form of "hw.snd.pcm%d.*" have been
moved to their own dev sysctl nodes, notably:
hw.snd.pcm%d.vchans -> dev.pcm.%d.vchans
Bump __FreeBSD_version.
Driver specific
---------------
- Ditto for sysctls.
- snd_atiixp, snd_es137x, snd_via8233, snd_hda
* Numerous cleanups and fixes.
* _EXPERIMENTAL_ polling mode support using simple callout_* mechanisme.
This was intended for pure debugging and latency measurement, but proven
good enough in few unexpected and rare cases (such as problematic shared
IRQ with GIANT devices - USB). Polling can be enabled/disabled through
dev.pcm.0.polling. Disabled by default.
- snd_ich
* Fix possible overflow during speed calibration. Delay final
initialization (pcm_setstatus) after calibration finished.
PR: kern/100169
Tested by: Kevin Overman <oberman@es.net>
* Inverted EAPD for few Nec VersaPro.
PR: kern/104715
Submitted by: KAWATA Masahiko <kawata@mta.biglobe.ne.jp>
Thanks to various people, notably Joel Dahl, Yuriy Tsibizov, Kevin Oberman,
those at #freebsd-azalia @ freenode and others for testing.
Joel Dahl will do the manpage update.
2006-11-26 12:24:06 +00:00
|
|
|
20061126:
|
|
|
|
Sound infrastructure has been updated with various fixes and
|
|
|
|
improvements. Most of the changes are pretty much transparent,
|
|
|
|
with exceptions of followings:
|
|
|
|
1) All sound driver specific sysctls (hw.snd.pcm%d.*) have been
|
|
|
|
moved to their own dev sysctl nodes, for example:
|
|
|
|
hw.snd.pcm0.vchans -> dev.pcm.0.vchans
|
|
|
|
2) /dev/dspr%d.%d has been deprecated. Each channel now has its
|
|
|
|
own chardev in the form of "dsp%d.<function>%d", where <function>
|
|
|
|
is p = playback, r = record and v = virtual, respectively. Users
|
|
|
|
are encouraged to use these devs instead of (old) "/dev/dsp%d.%d".
|
|
|
|
This does not affect those who are using "/dev/dsp".
|
|
|
|
|
2006-11-22 23:01:40 +00:00
|
|
|
20061122:
|
|
|
|
The following binaries have been disconnected from the build:
|
|
|
|
mount_devfs, mount_ext2fs, mount_fdescfs, mount_procfs, mount_linprocfs,
|
|
|
|
and mount_std. The functionality of these programs has been
|
|
|
|
moved into the mount program. For example, to mount a devfs
|
|
|
|
filesystem, instead of using mount_devfs, use: "mount -t devfs".
|
|
|
|
This does not affect entries in /etc/fstab, since entries in
|
|
|
|
/etc/fstab are always processed with "mount -t fstype".
|
|
|
|
|
2006-11-15 20:02:20 +00:00
|
|
|
20061113:
|
|
|
|
Support for PCI Message Signalled Interrupts on i386 and amd64
|
|
|
|
has been added to the kernel and various drivers will soon be
|
|
|
|
updated to use MSI when it is available. If there are any problems,
|
|
|
|
MSI can be disabled completely by setting the 'hw.pci.enable_msi'
|
|
|
|
and 'hw.pci.enable_msix' tunables to 0 in the loader.
|
|
|
|
|
2006-11-11 03:18:07 +00:00
|
|
|
20061110:
|
|
|
|
The MUTEX_PROFILING option has been renamed to LOCK_PROFILING.
|
|
|
|
The lockmgr object layout has been changed as a result of having
|
|
|
|
a lock_object embedded in it. As a consequence all file system
|
|
|
|
kernel modules must be re-compiled. The mutex profiling man page
|
|
|
|
has not yet been updated to reflect this change.
|
2003-08-20 01:52:30 +00:00
|
|
|
|
2006-10-26 22:05:25 +00:00
|
|
|
20061026:
|
2006-10-26 21:42:22 +00:00
|
|
|
KSE in the kernel has now been made optional and turned on by
|
2006-10-26 22:05:25 +00:00
|
|
|
default. Use 'nooption KSE' in your kernel config to turn it
|
|
|
|
off. All kernel modules *must* be recompiled after this change.
|
|
|
|
There-after, modules from a KSE kernel should be compatible with
|
|
|
|
modules from a NOKSE kernel due to the temporary padding fields
|
|
|
|
added to 'struct proc'.
|
2006-10-26 21:42:22 +00:00
|
|
|
|
2006-09-29 10:39:23 +00:00
|
|
|
20060929:
|
|
|
|
mrouted and its utilities have been removed from the base system.
|
|
|
|
|
2006-09-30 20:01:15 +00:00
|
|
|
20060927:
|
|
|
|
Some ioctl(2) command codes have changed. Full backward ABI
|
|
|
|
compatibility is provided if the "options COMPAT_FREEBSD6" is
|
|
|
|
present in the kernel configuration file. Make sure to add
|
|
|
|
this option to your kernel config file, or recompile X.Org
|
|
|
|
and the rest of ports; otherwise they may refuse to work.
|
|
|
|
|
2006-09-28 13:00:50 +00:00
|
|
|
20060924:
|
|
|
|
tcpslice has been removed from the base system.
|
|
|
|
|
2006-09-29 10:14:37 +00:00
|
|
|
20060913:
|
|
|
|
The sizes of struct tcpcb (and struct xtcpcb) have changed due to
|
|
|
|
the rewrite of TCP syncookies. Tools like netstat, sockstat, and
|
|
|
|
systat needs to be rebuilt.
|
|
|
|
|
2006-09-04 21:49:31 +00:00
|
|
|
20060903:
|
|
|
|
libpcap updated to v0.9.4 and tcpdump to v3.9.4
|
|
|
|
|
2006-08-17 00:41:05 +00:00
|
|
|
20060816:
|
|
|
|
The IPFIREWALL_FORWARD_EXTENDED option is gone and the behaviour
|
2006-09-18 11:24:25 +00:00
|
|
|
for IPFIREWALL_FORWARD is now as it was before when it was first
|
2006-08-17 00:41:05 +00:00
|
|
|
committed and for years after. The behaviour is now ON.
|
|
|
|
|
2006-07-26 16:31:10 +00:00
|
|
|
20060725:
|
|
|
|
enigma(1)/crypt(1) utility has been changed on 64 bit architectures.
|
|
|
|
Now it can decrypt files created from different architectures.
|
|
|
|
Unfortunately, it is no longer able to decrypt a cipher text
|
|
|
|
generated with an older version on 64 bit architectures.
|
|
|
|
If you have such a file, you need old utility to decrypt it.
|
|
|
|
|
2006-07-09 21:16:06 +00:00
|
|
|
20060709:
|
|
|
|
The interface version of the i4b kernel part has changed. So
|
|
|
|
after updating the kernel sources and compiling a new kernel,
|
|
|
|
the i4b user space tools in "/usr/src/usr.sbin/i4b" must also
|
|
|
|
be rebuilt, and vice versa.
|
|
|
|
|
2006-06-27 20:22:32 +00:00
|
|
|
20060627:
|
|
|
|
The XBOX kernel now defaults to the nfe(4) driver instead of
|
|
|
|
the nve(4) driver. Please update your configuration
|
|
|
|
accordingly.
|
|
|
|
|
2006-09-02 22:17:15 +00:00
|
|
|
20060514:
|
|
|
|
The i386-only lnc(4) driver for the AMD Am7900 LANCE and Am79C9xx
|
|
|
|
PCnet family of NICs has been removed. The new le(4) driver serves
|
|
|
|
as an equivalent but cross-platform replacement with the pcn(4)
|
|
|
|
driver still providing performance-optimized support for the subset
|
|
|
|
of AMD Am79C971 PCnet-FAST and greater chips as before.
|
|
|
|
|
2006-05-15 15:47:45 +00:00
|
|
|
20060511:
|
|
|
|
The machdep.* sysctls and the adjkerntz utility have been
|
|
|
|
modified a bit. The new adjkerntz utility uses the new
|
|
|
|
sysctl names and sysctlbyname() calls, so it may be impossible
|
|
|
|
to run an old /sbin/adjkerntz utility in single-user mode
|
|
|
|
with a new kernel. Replace the `adjkerntz -i' step before
|
|
|
|
`make installworld' with:
|
|
|
|
|
|
|
|
/usr/obj/usr/src/sbin/adjkerntz/adjkerntz -i
|
|
|
|
|
|
|
|
and proceed as usual with the rest of the installworld-stage
|
|
|
|
steps. Otherwise, you risk installing binaries with their
|
|
|
|
timestamp set several hours in the future, especially if
|
|
|
|
you are running with local time set to GMT+X hours.
|
|
|
|
|
2006-05-13 06:08:25 +00:00
|
|
|
20060412:
|
|
|
|
The ip6fw utility has been removed. The behavior provided by
|
|
|
|
ip6fw has been in ipfw2 for a good while and the rc.d scripts
|
2006-05-14 20:54:45 +00:00
|
|
|
have been updated to deal with it. There are some rules that
|
2006-05-13 06:08:25 +00:00
|
|
|
might not migrate cleanly. Use rc.firewall6 as a template to
|
|
|
|
rewrite rules.
|
|
|
|
|
2006-05-04 03:48:06 +00:00
|
|
|
20060428:
|
|
|
|
The puc(4) driver has been overhauled. The ebus(4) and sbus(4)
|
|
|
|
attachments have been removed. Make sure to configure scc(4)
|
|
|
|
on sparc64. Note also that by default puc(4) will use uart(4)
|
|
|
|
and not sio(4) for serial ports because interrupt handling has
|
|
|
|
been optimized for multi-port serial cards and only uart(4)
|
|
|
|
implements the interface to support it.
|
|
|
|
|
|
|
|
20060330:
|
|
|
|
The scc(4) driver replaces puc(4) for Serial Communications
|
|
|
|
Controllers (SCCs) like the Siemens SAB82532 and the Zilog
|
|
|
|
Z8530. On sparc64, it is advised to add scc(4) to the kernel
|
|
|
|
configuration to make sure that the serial ports remain
|
|
|
|
functional.
|
|
|
|
|
2006-03-21 10:10:05 +00:00
|
|
|
20060317:
|
|
|
|
Most world/kernel related NO_* build options changed names.
|
|
|
|
New knobs have common prefixes WITHOUT_*/WITH_* (modelled
|
|
|
|
after FreeBSD ports) and should be set in /etc/src.conf
|
|
|
|
(the src.conf(5) manpage is provided). Full backwards
|
|
|
|
compatibility is maintained for the time being though it's
|
|
|
|
highly recommended to start moving old options out of the
|
|
|
|
system-wide /etc/make.conf file into the new /etc/src.conf
|
|
|
|
while also properly renaming them. More conversions will
|
|
|
|
likely follow. Posting to current@:
|
|
|
|
|
|
|
|
http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html
|
|
|
|
|
2006-03-05 22:52:17 +00:00
|
|
|
20060305:
|
|
|
|
The NETSMBCRYPTO kernel option has been retired because its
|
|
|
|
functionality is always included in NETSMB and smbfs.ko now.
|
|
|
|
|
2006-03-03 21:37:38 +00:00
|
|
|
20060303:
|
|
|
|
The TDFX_LINUX kernel option was retired and replaced by the
|
2006-03-09 17:50:01 +00:00
|
|
|
tdfx_linux device. The latter can be loaded as the 3dfx_linux.ko
|
|
|
|
kernel module. Loading it alone should suffice to get 3dfx support
|
|
|
|
for Linux apps because it will pull in 3dfx.ko and linux.ko through
|
|
|
|
its dependencies.
|
2006-03-03 21:37:38 +00:00
|
|
|
|
2006-03-10 18:40:31 +00:00
|
|
|
20060204:
|
|
|
|
The 'audit' group was added to support the new auditing functionality
|
|
|
|
in the base system. Be sure to follow the directions for updating,
|
|
|
|
including the requirement to run mergemaster -p.
|
|
|
|
|
2006-02-01 13:04:52 +00:00
|
|
|
20060201:
|
|
|
|
The kernel ABI to file system modules was changed on i386.
|
|
|
|
Please make sure that your kernel and modules are in sync.
|
|
|
|
|
2006-01-18 19:54:51 +00:00
|
|
|
20060118:
|
|
|
|
This actually occured some time ago, but installing the kernel
|
|
|
|
now also installs a bunch of symbol files for the kernel modules.
|
2006-01-18 20:36:58 +00:00
|
|
|
This increases the size of /boot/kernel to about 67Mbytes. You
|
2006-01-18 19:54:51 +00:00
|
|
|
will need twice this if you will eventually back this up to kernel.old
|
|
|
|
on your next install.
|
|
|
|
If you have a shortage of room in your root partition, you should add
|
|
|
|
-DINSTALL_NODEBUG to your make arguments or add INSTALL_NODEBUG="yes"
|
|
|
|
to your /etc/make.conf.
|
|
|
|
|
2006-01-13 22:37:48 +00:00
|
|
|
20060113:
|
|
|
|
libc's malloc implementation has been replaced. This change has the
|
|
|
|
potential to uncover application bugs that previously went unnoticed.
|
|
|
|
See the malloc(3) manual page for more details.
|
|
|
|
|
2006-01-13 17:32:22 +00:00
|
|
|
20060112:
|
|
|
|
The generic netgraph(4) cookie has been changed. If you upgrade
|
|
|
|
kernel passing this point, you also need to upgrade userland
|
|
|
|
and netgraph(4) utilities like ports/net/mpd or ports/net/mpd4.
|
|
|
|
|
2006-01-31 20:29:04 +00:00
|
|
|
20060106:
|
|
|
|
si(4)'s device files now contain the unit number.
|
|
|
|
Uses of {cua,tty}A[0-9a-f] should be replaced by {cua,tty}A0[0-9a-f].
|
|
|
|
|
2006-01-06 19:04:39 +00:00
|
|
|
20060106:
|
|
|
|
The kernel ABI was mostly destroyed due to a change in the size
|
|
|
|
of struct lock_object which is nested in other structures such
|
|
|
|
as mutexes which are nested in all sorts of other structures.
|
|
|
|
Make sure your kernel and modules are in sync.
|
|
|
|
|
2005-12-31 14:44:49 +00:00
|
|
|
20051231:
|
|
|
|
The page coloring algorithm in the VM subsystem was converted
|
|
|
|
from tuning with kernel options to autotuning. Please remove
|
|
|
|
any PQ_* option except PQ_NOOPT from your kernel config.
|
|
|
|
|
2005-12-11 23:18:58 +00:00
|
|
|
20051211:
|
|
|
|
The net80211-related tools in the tools/tools/ath directory
|
|
|
|
have been moved to tools/tools/net80211 and renamed with a
|
|
|
|
"wlan" prefix. Scripts that use them should be adjusted
|
|
|
|
accordingly.
|
|
|
|
|
2005-12-03 07:51:07 +00:00
|
|
|
20051202:
|
|
|
|
Scripts in the local_startup directories (as defined in
|
|
|
|
/etc/defaults/rc.conf) that have the new rc.d semantics will
|
|
|
|
now be run as part of the base system rcorder. If there are
|
|
|
|
errors or problems with one of these local scripts, it could
|
|
|
|
cause boot problems. If you encounter such problems, boot in
|
|
|
|
single user mode, remove that script from the */rc.d directory.
|
|
|
|
Please report the problem to the port's maintainer, and the
|
|
|
|
freebsd-ports@freebsd.org mailing list.
|
|
|
|
|
2005-11-29 19:13:28 +00:00
|
|
|
20051129:
|
|
|
|
The nodev mount option was deprecated in RELENG_6 (where it
|
|
|
|
was a no-op), and is now unsupported. If you have nodev or dev listed
|
|
|
|
in /etc/fstab, remove it, otherwise it will result in a mount error.
|
|
|
|
|
2005-11-29 08:59:41 +00:00
|
|
|
20051129:
|
|
|
|
ABI between ipfw(4) and ipfw(8) has been changed. You need
|
|
|
|
to rebuild ipfw(8) when rebuilding kernel.
|
|
|
|
|
2005-12-19 03:15:49 +00:00
|
|
|
20051108:
|
|
|
|
rp(4)'s device files now contain the unit number.
|
|
|
|
Uses of {cua,tty}R[0-9a-f] should be replaced by {cua,tty}R0[0-9a-f].
|
|
|
|
|
2005-10-29 05:27:32 +00:00
|
|
|
20051029:
|
|
|
|
/etc/rc.d/ppp-user has been renamed to /etc/rc.d/ppp.
|
|
|
|
Its /etc/rc.conf.d configuration file has been `ppp' from
|
|
|
|
the beginning, and hence there is no need to touch it.
|
|
|
|
|
2006-02-19 01:05:57 +00:00
|
|
|
20051014:
|
|
|
|
Now most modules get their build-time options from the kernel
|
|
|
|
configuration file. A few modules still have fixed options
|
|
|
|
due to their non-conformant implementation, but they will be
|
|
|
|
corrected eventually. You may need to review the options of
|
|
|
|
the modules in use, explicitly specify the non-default options
|
|
|
|
in the kernel configuration file, and rebuild the kernel and
|
|
|
|
modules afterwards.
|
|
|
|
|
2005-10-01 20:53:51 +00:00
|
|
|
20051001:
|
|
|
|
kern.polling.enable sysctl MIB is now deprecated. Use ifconfig(8)
|
|
|
|
to turn polling(4) on your interfaces.
|
|
|
|
|
2005-09-27 18:10:43 +00:00
|
|
|
20050927:
|
|
|
|
The old bridge(4) implementation was retired. The new
|
|
|
|
if_bridge(4) serves as a full functional replacement.
|
|
|
|
|
2005-07-22 18:51:36 +00:00
|
|
|
20050722:
|
|
|
|
The ai_addrlen of a struct addrinfo was changed to a socklen_t
|
|
|
|
to conform to POSIX-2001. This change broke an ABI
|
|
|
|
compatibility on 64 bit architecture. You have to recompile
|
|
|
|
userland programs that use getaddrinfo(3) on 64 bit
|
|
|
|
architecture.
|
|
|
|
|
2005-07-11 15:46:45 +00:00
|
|
|
20050711:
|
|
|
|
RELENG_6 branched here.
|
|
|
|
|
2005-06-30 05:02:34 +00:00
|
|
|
20050629:
|
|
|
|
The pccard_ifconfig rc.conf variable has been removed and a new
|
|
|
|
variable, ifconfig_DEFAULT has been introduced. Unlike
|
|
|
|
pccard_ifconfig, ifconfig_DEFAULT applies to ALL interfaces that
|
|
|
|
do not have ifconfig_ifn entries rather than just those in
|
|
|
|
removable_interfaces.
|
|
|
|
|
2005-07-01 15:12:09 +00:00
|
|
|
20050616:
|
|
|
|
Some previous versions of PAM have permitted the use of
|
|
|
|
non-absolute paths in /etc/pam.conf or /etc/pam.d/* when referring
|
|
|
|
to third party PAM modules in /usr/local/lib. A change has been
|
|
|
|
made to require the use of absolute paths in order to avoid
|
|
|
|
ambiguity and dependence on library path configuration, which may
|
|
|
|
affect existing configurations.
|
|
|
|
|
2005-06-10 16:51:49 +00:00
|
|
|
20050610:
|
|
|
|
Major changes to network interface API. All drivers must be
|
|
|
|
recompiled. Drivers not in the base system will need to be
|
|
|
|
updated to the new APIs.
|
|
|
|
|
2005-06-09 19:09:38 +00:00
|
|
|
20050609:
|
|
|
|
Changes were made to kinfo_proc in sys/user.h. Please recompile
|
|
|
|
userland, or commands like `fstat', `pkill', `ps', `top' and `w'
|
|
|
|
will not behave correctly.
|
|
|
|
|
2005-06-10 19:59:26 +00:00
|
|
|
The API and ABI for hwpmc(4) have changed with the addition
|
|
|
|
of sampling support. Please recompile lib/libpmc(3) and
|
|
|
|
usr.sbin/{pmcstat,pmccontrol}.
|
|
|
|
|
2005-06-07 18:07:47 +00:00
|
|
|
20050606:
|
|
|
|
The OpenBSD dhclient was imported in place of the ISC dhclient
|
|
|
|
and the network interface configuration scripts were updated
|
|
|
|
accordingly. If you use DHCP to configure your interfaces, you
|
|
|
|
must now run devd. Also, DNS updating was lost so you will need
|
|
|
|
to find a workaround if you use this feature.
|
|
|
|
|
2006-03-10 18:40:31 +00:00
|
|
|
The '_dhcp' user was added to support the OpenBSD dhclient. Be
|
|
|
|
sure to run mergemaster -p (like you are supposed to do every time
|
|
|
|
anyway).
|
|
|
|
|
2005-06-05 03:38:03 +00:00
|
|
|
20050605:
|
|
|
|
if_bridge was added to the tree. This has changed struct ifnet.
|
|
|
|
Please recompile userland and all network related modules.
|
|
|
|
|
2005-06-03 03:34:21 +00:00
|
|
|
20050603:
|
|
|
|
The n_net of a struct netent was changed to an uint32_t, and
|
|
|
|
1st argument of getnetbyaddr() was changed to an uint32_t, to
|
2005-06-03 09:15:17 +00:00
|
|
|
conform to POSIX-2001. These changes broke an ABI
|
2005-06-03 10:19:26 +00:00
|
|
|
compatibility on 64 bit architecture. With these changes,
|
|
|
|
shlib major of libpcap was bumped. You have to recompile
|
|
|
|
userland programs that use getnetbyaddr(3), getnetbyname(3),
|
|
|
|
getnetent(3) and/or libpcap on 64 bit architecture.
|
2005-06-03 03:34:21 +00:00
|
|
|
|
2005-05-28 22:45:31 +00:00
|
|
|
20050528:
|
|
|
|
Kernel parsing of extra options on '#!' first lines of shell
|
|
|
|
scripts has changed. Lines with multiple options likely will
|
|
|
|
fail after this date. For full details, please see
|
|
|
|
http://people.freebsd.org/~gad/Updating-20050528.txt
|
|
|
|
|
2005-05-03 17:43:14 +00:00
|
|
|
20050503:
|
|
|
|
The packet filter (pf) code has been updated to OpenBSD 3.7
|
|
|
|
Please note the changed anchor syntax and the fact that
|
|
|
|
authpf(8) now needs a mounted fdescfs(5) to function.
|
|
|
|
|
2005-04-18 14:33:18 +00:00
|
|
|
20050415:
|
|
|
|
The NO_MIXED_MODE kernel option has been removed from the i386
|
|
|
|
amd64 platforms as its use has been superceded by the new local
|
|
|
|
APIC timer code. Any kernel config files containing this option
|
|
|
|
should be updated.
|
|
|
|
|
2005-02-26 22:26:10 +00:00
|
|
|
20050227:
|
|
|
|
The on-disk format of LC_CTYPE files was changed to be machine
|
|
|
|
independent. Please make sure NOT to use NO_CLEAN buildworld
|
2005-12-06 10:39:14 +00:00
|
|
|
when crossing this point. Crossing this point also requires
|
|
|
|
recompile or reinstall of all locale depended packages.
|
2005-02-26 22:26:10 +00:00
|
|
|
|
2005-02-25 19:46:41 +00:00
|
|
|
20050225:
|
|
|
|
The ifi_epoch member of struct if_data has been changed to
|
|
|
|
contain the uptime at which the interface was created or the
|
|
|
|
statistics zeroed rather then the wall clock time because
|
|
|
|
wallclock time may go backwards. This should have no impact
|
|
|
|
unless an snmp implementation is using this value (I know of
|
|
|
|
none at this point.)
|
|
|
|
|
2005-02-25 20:10:38 +00:00
|
|
|
20050224:
|
|
|
|
The acpi_perf and acpi_throttle drivers are now part of the
|
|
|
|
acpi(4) main module. They are no longer built separately.
|
|
|
|
|
2005-02-25 11:49:42 +00:00
|
|
|
20050223:
|
|
|
|
The layout of struct image_params has changed. You have to
|
|
|
|
recompile all compatibility modules (linux, svr4, etc) for use
|
|
|
|
with the new kernel.
|
|
|
|
|
2005-02-23 16:52:55 +00:00
|
|
|
20050223:
|
|
|
|
The p4tcc driver has been merged into cpufreq(4). This makes
|
|
|
|
"options CPU_ENABLE_TCC" obsolete. Please load cpufreq.ko or
|
|
|
|
compile in "device cpufreq" to restore this functionality.
|
|
|
|
|
2005-03-01 02:33:34 +00:00
|
|
|
20050220:
|
|
|
|
The responsibility of recomputing the file system summary of
|
|
|
|
a SoftUpdates-enabled dirty volume has been transferred to the
|
|
|
|
background fsck. A rebuild of fsck(8) utility is recommended
|
|
|
|
if you have updated the kernel.
|
|
|
|
|
|
|
|
To get the old behavior (recompute file system summary at mount
|
|
|
|
time), you can set vfs.ffs.compute_summary_at_mount=1 before
|
|
|
|
mounting the new volume.
|
|
|
|
|
2005-02-06 21:24:50 +00:00
|
|
|
20050206:
|
|
|
|
The cpufreq import is complete. As part of this, the sysctls for
|
2005-02-25 20:10:38 +00:00
|
|
|
acpi(4) throttling have been removed. The power_profile script
|
2005-02-06 21:24:50 +00:00
|
|
|
has been updated, so you can use performance/economy_cpu_freq in
|
2005-02-25 20:10:38 +00:00
|
|
|
rc.conf(5) to set AC on/offline cpu frequencies.
|
2005-02-06 21:24:50 +00:00
|
|
|
|
2005-02-05 23:25:59 +00:00
|
|
|
20050206:
|
|
|
|
NG_VERSION has been increased. Recompiling kernel (or ng_socket.ko)
|
|
|
|
requires recompiling libnetgraph and userland netgraph utilities.
|
2005-01-15 01:53:49 +00:00
|
|
|
|
|
|
|
20050114:
|
|
|
|
Support for abbreviated forms of a number of ipfw options is
|
|
|
|
now deprecated. Warnings are printed to stderr indicating the
|
|
|
|
correct full form when a match occurs. Some abbreviations may
|
|
|
|
be supported at a later date based on user feedback. To be
|
|
|
|
considered for support, abbreviations must be in use prior to
|
|
|
|
this commit and unlikely to be confused with current key words.
|
|
|
|
|
2004-12-23 16:03:08 +00:00
|
|
|
20041221:
|
|
|
|
By a popular demand, a lot of NOFOO options were renamed
|
|
|
|
to NO_FOO (see bsd.compat.mk for a full list). The old
|
|
|
|
spellings are still supported, but will cause annoying
|
|
|
|
warnings on stderr. Make sure you upgrade properly (see
|
|
|
|
the COMMON ITEMS: section later in this file).
|
|
|
|
|
2004-12-20 04:27:23 +00:00
|
|
|
20041219:
|
|
|
|
Auto-loading of ancillary wlan modules such as wlan_wep has
|
|
|
|
been temporarily disabled; you need to statically configure
|
|
|
|
the modules you need into your kernel or explicitly load them
|
|
|
|
prior to use. Specifically, if you intend to use WEP encryption
|
|
|
|
with an 802.11 device load/configure wlan_wep; if you want to
|
|
|
|
use WPA with the ath driver load/configure wlan_tkip, wlan_ccmp,
|
|
|
|
and wlan_xauth as required.
|
|
|
|
|
2004-12-13 17:52:10 +00:00
|
|
|
20041213:
|
|
|
|
The behaviour of ppp(8) has changed slightly. If lqr is enabled
|
|
|
|
(``enable lqr''), older versions would revert to LCP ECHO mode on
|
|
|
|
negotiation failure. Now, ``enable echo'' is required for this
|
|
|
|
behaviour. The ppp version number has been bumped to 3.4.2 to
|
|
|
|
reflect the change.
|
|
|
|
|
2004-12-11 23:21:31 +00:00
|
|
|
20041201:
|
|
|
|
The wlan support has been updated to split the crypto support
|
|
|
|
into separate modules. For static WEP you must configure the
|
|
|
|
wlan_wep module in your system or build and install the module
|
|
|
|
in place where it can be loaded (the kernel will auto-load
|
|
|
|
the module when a wep key is configured).
|
|
|
|
|
|
|
|
20041201:
|
|
|
|
The ath driver has been updated to split the tx rate control
|
|
|
|
algorithm into a separate module. You need to include either
|
|
|
|
ath_rate_onoe or ath_rate_amrr when configuring the kernel.
|
|
|
|
|
2004-11-16 21:18:41 +00:00
|
|
|
20041116:
|
|
|
|
Support for systems with an 80386 CPU has been removed. Please
|
|
|
|
use FreeBSD 5.x or earlier on systems with an 80386.
|
|
|
|
|
2004-11-10 07:39:27 +00:00
|
|
|
20041110:
|
|
|
|
We have had a hack which would mount the root filesystem
|
|
|
|
R/W if the device were named 'md*'. As part of the vnode
|
|
|
|
work I'm doing I have had to remove this hack. People
|
|
|
|
building systems which use preloaded MD root filesystems
|
|
|
|
may need to insert a "/sbin/mount -u -o rw /dev/md0 /" in
|
|
|
|
their /etc/rc scripts.
|
|
|
|
|
2005-02-07 09:15:52 +00:00
|
|
|
20041104:
|
|
|
|
FreeBSD 5.3 shipped here.
|
|
|
|
|
2004-11-02 22:22:22 +00:00
|
|
|
20041102:
|
|
|
|
The size of struct tcpcb has changed again due to the removal
|
|
|
|
of RFC1644 T/TCP. You have to recompile userland programs that
|
|
|
|
read kmem for tcp sockets directly (netstat, sockstat, etc.)
|
|
|
|
|
2004-10-22 19:55:04 +00:00
|
|
|
20041022:
|
|
|
|
The size of struct tcpcb has changed. You have to recompile
|
|
|
|
userland programs that read kmem for tcp sockets directly
|
|
|
|
(netstat, sockstat, etc.)
|
|
|
|
|
2005-02-04 21:22:06 +00:00
|
|
|
20041016:
|
|
|
|
RELENG_5 branched here. For older entries, please see updating
|
|
|
|
in the RELENG_5 branch.
|
1999-01-14 05:59:52 +00:00
|
|
|
|
2000-01-30 23:15:21 +00:00
|
|
|
COMMON ITEMS:
|
|
|
|
|
2000-09-04 03:18:01 +00:00
|
|
|
General Notes
|
|
|
|
-------------
|
|
|
|
Avoid using make -j when upgrading. From time to time in the
|
|
|
|
past there have been problems using -j with buildworld and/or
|
|
|
|
installworld. This is especially true when upgrading between
|
|
|
|
"distant" versions (eg one that cross a major release boundary
|
|
|
|
or several minor releases, or when several months have passed
|
|
|
|
on the -current branch).
|
|
|
|
|
2002-01-26 21:33:07 +00:00
|
|
|
Sometimes, obscure build problems are the result of environment
|
|
|
|
poisoning. This can happen because the make utility reads its
|
|
|
|
environment when searching for values for global variables.
|
|
|
|
To run your build attempts in an "environmental clean room",
|
|
|
|
prefix all make commands with 'env -i '. See the env(1) manual
|
|
|
|
page for more details.
|
|
|
|
|
2005-12-07 20:49:42 +00:00
|
|
|
When upgrading from one major version to another it is generally
|
|
|
|
best to upgrade to the latest code in the currently installed branch
|
|
|
|
first, then do an upgrade to the new branch. This is the best-tested
|
|
|
|
upgrade path, and has the highest probability of being successful.
|
|
|
|
Please try this approach before reporting problems with a major
|
|
|
|
version upgrade.
|
|
|
|
|
2000-01-30 23:15:21 +00:00
|
|
|
To build a kernel
|
|
|
|
-----------------
|
2000-08-10 05:14:31 +00:00
|
|
|
If you are updating from a prior version of FreeBSD (even one just
|
2005-09-09 15:59:17 +00:00
|
|
|
a few days old), you should follow this procedure. It is the most
|
|
|
|
failsafe as it uses a /usr/obj tree with a fresh mini-buildworld,
|
|
|
|
|
|
|
|
make kernel-toolchain
|
2003-10-03 18:29:06 +00:00
|
|
|
make -DALWAYS_CHECK_MAKE buildkernel KERNCONF=YOUR_KERNEL_HERE
|
|
|
|
make -DALWAYS_CHECK_MAKE installkernel KERNCONF=YOUR_KERNEL_HERE
|
2000-08-10 05:14:31 +00:00
|
|
|
|
2005-05-25 21:03:13 +00:00
|
|
|
To test a kernel once
|
|
|
|
---------------------
|
|
|
|
If you just want to boot a kernel once (because you are not sure
|
|
|
|
if it works, or if you want to boot a known bad kernel to provide
|
|
|
|
debugging information) run
|
|
|
|
make installkernel KERNCONF=YOUR_KERNEL_HERE KODIR=/boot/testkernel
|
|
|
|
nextboot -k testkernel
|
|
|
|
|
2000-08-10 05:14:31 +00:00
|
|
|
To just build a kernel when you know that it won't mess you up
|
|
|
|
--------------------------------------------------------------
|
2004-04-11 03:30:09 +00:00
|
|
|
This assumes you are already running a 5.X system. Replace
|
|
|
|
${arch} with the architecture of your machine (e.g. "i386",
|
|
|
|
"alpha", "amd64", "ia64", "pc98", "sparc64", etc).
|
|
|
|
|
|
|
|
cd src/sys/${arch}/conf
|
2002-01-06 20:18:13 +00:00
|
|
|
config KERNEL_NAME_HERE
|
2004-04-11 03:30:09 +00:00
|
|
|
cd ../compile/KERNEL_NAME_HERE
|
2000-08-10 05:14:31 +00:00
|
|
|
make depend
|
|
|
|
make
|
2004-06-22 10:33:58 +00:00
|
|
|
make install
|
2000-08-10 05:14:31 +00:00
|
|
|
|
|
|
|
If this fails, go to the "To build a kernel" section.
|
|
|
|
|
|
|
|
To rebuild everything and install it on the current system.
|
|
|
|
-----------------------------------------------------------
|
2002-10-26 06:25:11 +00:00
|
|
|
# Note: sometimes if you are running current you gotta do more than
|
|
|
|
# is listed here if you are upgrading from a really old current.
|
|
|
|
|
2002-10-26 22:55:43 +00:00
|
|
|
<make sure you have good level 0 dumps>
|
2002-10-26 06:25:11 +00:00
|
|
|
make buildworld
|
2004-08-25 19:39:13 +00:00
|
|
|
make kernel KERNCONF=YOUR_KERNEL_HERE
|
2002-10-26 06:25:11 +00:00
|
|
|
[1]
|
|
|
|
<reboot in single user> [3]
|
|
|
|
mergemaster -p [5]
|
|
|
|
make installworld
|
2005-07-23 14:23:30 +00:00
|
|
|
make delete-old
|
2002-10-26 06:25:11 +00:00
|
|
|
mergemaster [4]
|
|
|
|
<reboot>
|
|
|
|
|
2000-02-06 04:07:11 +00:00
|
|
|
|
2003-02-07 08:26:23 +00:00
|
|
|
To cross-install current onto a separate partition
|
|
|
|
--------------------------------------------------
|
|
|
|
# In this approach we use a separate partition to hold
|
|
|
|
# current's root, 'usr', and 'var' directories. A partition
|
|
|
|
# holding "/", "/usr" and "/var" should be about 2GB in
|
|
|
|
# size.
|
|
|
|
|
|
|
|
<make sure you have good level 0 dumps>
|
|
|
|
<boot into -stable>
|
|
|
|
make buildworld
|
2005-02-23 20:37:11 +00:00
|
|
|
make buildkernel KERNCONF=YOUR_KERNEL_HERE
|
2003-02-07 08:26:23 +00:00
|
|
|
<maybe newfs current's root partition>
|
|
|
|
<mount current's root partition on directory ${CURRENT_ROOT}>
|
|
|
|
make installworld DESTDIR=${CURRENT_ROOT}
|
2006-04-07 11:36:25 +00:00
|
|
|
make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd
|
2005-02-23 20:37:11 +00:00
|
|
|
make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT}
|
2003-02-07 08:26:23 +00:00
|
|
|
cp /etc/fstab ${CURRENT_ROOT}/etc/fstab # if newfs'd
|
|
|
|
<edit ${CURRENT_ROOT}/etc/fstab to mount "/" from the correct partition>
|
|
|
|
<reboot into current>
|
|
|
|
<do a "native" rebuild/install as described in the previous section>
|
2004-08-25 19:39:13 +00:00
|
|
|
<maybe install compatibility libraries from src/lib/compat>
|
2004-06-22 10:33:58 +00:00
|
|
|
<reboot>
|
2003-02-07 08:26:23 +00:00
|
|
|
|
|
|
|
|
2005-03-03 08:43:33 +00:00
|
|
|
To upgrade in-place from 5.x-stable to current
|
2003-02-07 08:26:23 +00:00
|
|
|
----------------------------------------------
|
2002-10-26 22:55:43 +00:00
|
|
|
<make sure you have good level 0 dumps>
|
2002-10-28 21:33:10 +00:00
|
|
|
make buildworld [9]
|
2004-09-04 21:03:10 +00:00
|
|
|
make kernel KERNCONF=YOUR_KERNEL_HERE [8]
|
2002-10-26 06:21:00 +00:00
|
|
|
[1]
|
|
|
|
<reboot in single user> [3]
|
|
|
|
mergemaster -p [5]
|
2000-06-14 15:42:50 +00:00
|
|
|
make installworld
|
2005-07-23 14:23:30 +00:00
|
|
|
make delete-old
|
2004-06-26 21:58:56 +00:00
|
|
|
mergemaster -i [4]
|
2000-06-14 15:42:50 +00:00
|
|
|
<reboot>
|
|
|
|
|
2000-08-28 03:54:51 +00:00
|
|
|
Make sure that you've read the UPDATING file to understand the
|
|
|
|
tweaks to various things you need. At this point in the life
|
|
|
|
cycle of current, things change often and you are on your own
|
|
|
|
to cope. The defaults can also change, so please read ALL of
|
|
|
|
the UPDATING entries.
|
2000-06-14 15:42:50 +00:00
|
|
|
|
2000-08-06 22:16:34 +00:00
|
|
|
Also, if you are tracking -current, you must be subscribed to
|
|
|
|
freebsd-current@freebsd.org. Make sure that before you update
|
|
|
|
your sources that you have read and understood all the recent
|
|
|
|
messages there. If in doubt, please track -stable which has
|
|
|
|
much fewer pitfalls.
|
|
|
|
|
2000-08-10 05:03:49 +00:00
|
|
|
[1] If you have third party modules, such as vmware, you
|
|
|
|
should disable them at this point so they don't crash your
|
|
|
|
system on reboot.
|
|
|
|
|
2001-06-04 16:17:06 +00:00
|
|
|
[3] From the bootblocks, boot -s, and then do
|
|
|
|
fsck -p
|
|
|
|
mount -u /
|
|
|
|
mount -a
|
2004-08-25 19:39:13 +00:00
|
|
|
cd src
|
2002-01-06 20:18:13 +00:00
|
|
|
adjkerntz -i # if CMOS is wall time
|
2002-04-25 02:14:48 +00:00
|
|
|
Also, when doing a major release upgrade, it is required that
|
|
|
|
you boot into single user mode to do the installworld.
|
2001-06-04 16:17:06 +00:00
|
|
|
|
2001-08-11 02:03:51 +00:00
|
|
|
[4] Note: This step is non-optional. Failure to do this step
|
|
|
|
can result in a significant reduction in the functionality of the
|
|
|
|
system. Attempting to do it by hand is not recommended and those
|
|
|
|
that pursue this avenue should read this file carefully, as well
|
|
|
|
as the archives of freebsd-current and freebsd-hackers mailing lists
|
|
|
|
for potential gotchas.
|
|
|
|
|
2002-04-19 04:22:35 +00:00
|
|
|
[5] Usually this step is a noop. However, from time to time
|
|
|
|
you may need to do this if you get unknown user in the following
|
|
|
|
step. It never hurts to do it all the time. You may need to
|
|
|
|
install a new mergemaster (cd src/usr.sbin/mergemaster && make
|
|
|
|
install) after the buildworld before this step if you last updated
|
|
|
|
from current before 20020224 or from -stable before 20020408.
|
|
|
|
|
2002-10-27 04:48:31 +00:00
|
|
|
[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
|
2005-12-06 10:39:14 +00:00
|
|
|
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.
|
2002-10-27 04:48:31 +00:00
|
|
|
|
2004-09-04 21:03:10 +00:00
|
|
|
Make sure that you merge any new devices from GENERIC since the
|
|
|
|
last time you updated your kernel config file.
|
|
|
|
|
2002-10-28 21:33:10 +00:00
|
|
|
[9] When checking out sources, you must include the -P flag to have
|
2004-09-04 21:03:10 +00:00
|
|
|
cvs prune empty directories.
|
|
|
|
|
|
|
|
If CPUTYPE is defined in your /etc/make.conf, make sure to use the
|
|
|
|
"?=" instead of the "=" assignment operator, so that buildworld can
|
|
|
|
override the CPUTYPE if it needs to.
|
|
|
|
|
|
|
|
MAKEOBJDIRPREFIX must be defined in an environment variable, and
|
|
|
|
not on the command line, or in /etc/make.conf. buildworld will
|
|
|
|
warn if it is improperly defined.
|
2000-01-30 23:15:21 +00:00
|
|
|
FORMAT:
|
|
|
|
|
2000-09-04 16:59:32 +00:00
|
|
|
This file contains a list, in reverse chronological order, of major
|
1999-02-14 05:18:35 +00:00
|
|
|
breakages in tracking -current. Not all things will be listed here,
|
2005-03-03 08:43:33 +00:00
|
|
|
and it only starts on October 16, 2004. Updating files can found in
|
2000-03-23 05:57:10 +00:00
|
|
|
previous releases if your system is older than this.
|
1999-02-14 05:18:35 +00:00
|
|
|
|
2001-06-29 06:00:44 +00:00
|
|
|
Copyright information:
|
|
|
|
|
2005-03-03 08:43:33 +00:00
|
|
|
Copyright 1998-2005 M. Warner Losh. All Rights Reserved.
|
2001-06-29 06:00:44 +00:00
|
|
|
|
2001-09-23 06:36:41 +00:00
|
|
|
Redistribution, publication, translation and use, with or without
|
|
|
|
modification, in full or in part, in any form or format of this
|
2002-04-11 05:45:17 +00:00
|
|
|
document are permitted without further permission from the author.
|
2001-06-29 06:00:44 +00:00
|
|
|
|
|
|
|
THIS DOCUMENT IS PROVIDED BY WARNER LOSH ``AS IS'' AND ANY EXPRESS OR
|
|
|
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
|
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
|
|
DISCLAIMED. IN NO EVENT SHALL WARNER LOSH BE LIABLE FOR ANY DIRECT,
|
|
|
|
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
|
|
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
|
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
|
|
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
|
|
|
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
|
|
|
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
|
|
POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
|
|
|
|
If you find this document useful, and you want to, you may buy the
|
|
|
|
author a beer.
|
|
|
|
|
2001-09-23 06:44:07 +00:00
|
|
|
Contact Warner Losh if you have any questions about your use of
|
2001-09-23 06:36:41 +00:00
|
|
|
this document.
|
|
|
|
|
1999-08-28 01:35:59 +00:00
|
|
|
$FreeBSD$
|