Obtaining DragonFly 1.8.x for your system
1.8.1 ISO Images for CDs
DragonFly CDs are 'live', which means that the CD will boot your system
and let you log in as root (no password). You can use this feature to
check for hardware compatibility and play with DragonFly a little before
actually installing it on your hard drive.
The CD includes an installer that can be run at the console, or
(experimentally) via a web browser. Make sure you read the
file for more information. To activate the installer, boot the CD and
login as 'installer'.
The installer has a Netboot server option. You can
boot the CD on one machine, enable the feature via the installer, and
then PXEBoot other systems and do a network based install. System
operators should be aware that running the netboot server hardwires
a 10.1.0.X network and runs a DHCP server which might interfere with
other DHCP servers on your LAN.
See the 'Download Site' list below for a list of download locations.
The MD5 for the release is:
MD5 (dfly-1.8.0_REL.iso) = d5ffce6709ca82be458d95634d73a58b
MD5 (dfly-1.8.0_REL.iso.gz) = 893b606ce5c0f156ea74c57ebf554c2b
MD5 (dfly-1.8.1_REL.iso) = 98b4cfd6f8aabf49acf7a81d75368156
MD5 (dfly-1.8.1_REL.iso.gz) = fdafd2df5f48df4f7fdf0ff0b9ecee0c
1.8.x Release Errata
DragonFly releases are meant to be stable, dependable entities. We
backport compatible bug fixes from current development into release
branches but we do not generally backport new features.
The release CD is always a '.0', e.g. 1.6.0. The most common way to
track a release is to use cvsup to track the release sources and then
build and install a new world and kernel to keep your system updated.
We do not always get every last little fix into a release. Please
be sure to read the errata page for the release CD!
1.8.x Release Sites
(try to find another site first)|
Release Notes for DragonFly 1.8.1
- Security updates for bind, file, libmagic, and tcpdump
- xorg added to various paths, including periodic directories for cron
and manual paths.
- The dynamic loader now properly searches objects, solving problems
with a number of pkgsrc applications.
- A bug in getcontext() has been fixed.
- Miscellanious zoneinfo updates have been made.
- Miscellanious ACPI and taskqueue adjustments have been MFCd.
- The fwe network interface is now properly dependant on firewire
- A bug in vinum was fixed
- The virtual kernel's VKE network interface can now be tcpdumped.
- a NULL sa pointer can be passed to the 4.3 compat recvfrom() syscall,
to the linux compat recvfrom() syscall, and to the current recvfrom()
- A bounds check error against UIO_MAXIOV and UIO_SMALLIOV has been
- Simulate a '/' mount for processes doing a df in a chrooted
environment (when chrooted into a subdirectory).
- Fix a bug in DDB's backtrace.
- Update the EST module (cpu voltage / frequency reporting)
- The virtual kernel now properly handles spurious SIGTRAPs
- MFC a bug fix for SMBFS which fixes a kernel panic.
Release Notes for DragonFly 1.8.0
1.8 is our fifth major DragonFly release. DragonFly's policy is to
only commit bug fixes to release branches.
The biggest kernel change in this release is the addition of virtual kernel
support and a virtual kernel build target (VKERNEL). Virtual kernels are
systems-in-a-box... you can run a complete kernel as a userland process.
All standard non-hardware-specific applications will run inside the virtual
kernel. Performance depends on how heavily an application interacts with
the VM system and how often it makes system calls, since these operations
have to be forwarded by the real kernel to the virtual kernel.
The biggest user-visible changes include updates to third party applications
included in the base system, a major rewrite of NULLFS which removes all
directory recursion restrictions from mount_null and removes nearly all
the kernel resource overhead when using such mounts, and a multi-ip feature
A more complete list is included below. We consider 1.8 to be more
stable then 1.6.
- Implement Virtual Kernel support and add a VKERNEL target.
Virtual kernels are run as userland processes and provide a
complete (minus hardware drivers) working kernel environment.
A simulated disk driver is included and a simulated network
driver using the TAP interface is included, allowing network
access. See the vkernel(7) manual page for more information.
- Jails are now IPv6 aware and support multiple IP addresses.
- Bridging support has been greatly improved.
- Many, many new network drivers and chipsets have been added.
- Major infrastructure for 802.x wireless support added (WPA,
TX rate control, major API layer for all wireless network
devices, better ifconfig integration, and more).
- The cpdup program has been greatly enhanced and now supports
remote copies via ssh.
- Introduce getcontext(3), setcontext(3), and friends
- Improved support for old-style disklabels.
- Kernel sources are now included on release CDs.
- Major rewrite of the vnode operations infrastructure, greatly
simplifying the layer.
- Fix a bug related to POSIX locking.
- Tons of documentation updates and code readability cleanups.
- Restructure the kernel build to accomodate multiple architectures.
Start separting platform components from cpu components.
- Synchronize a bunch of AMD64 related items (but we don't support
64 bit mode yet).
- Major rewrite of the mount glue infrastructure and NULLFS which
allows the namecache topology to be shared for multiple NULLFS
mounts and also allows arbitrary stacking of read-only and
read-write NULLFS mounts with basically zero kernel overhead.
- Unconditionally associate a namecache reference with all
file descriptors, allowing us to share vnodes across different
- NULLFS mounts may now be arbitrarily stacked and distinct paths
are no longer required.
- Properly dereference mount point roots when unmounting. Raise
hell if unmounting a filesystem which still has references.
- Do a massive reorganization of the device operations vector and
remove many instances where devops functions were dependant on
the calling process or thread to obtain cred information.
- Do a run through of all system header files to make sure they
include any dependancies themselves, instead of requiring the
originating source file to include the dependancies first.
This greatly reduces the effort required to use kernel header
files in new sources.
- Synchronize MII support with NetBSD and OpenBSD, including adding
standard conforming GMII support. Er. In otherwords, improve
driver support for physical network interfaces (phys's).
- Remove VOP locking vectors. Make VOP locking functions direct
calls (and thus mandatory).
- Control access to vnode ref count fields with a spinlock
- Fix a dubious construct in usr.bin/tail (no, really! That's
what the commit message said!).
- Add support for %j to the kernel printf.
- Major symbol separation for most kernel functions which
inexactly mimic libc functions. e.g. printf -> kprintf,
in order to allow user-mode kernels to be linked against libc.
- Update to sendmail to 8.13.8.
- Update to OpenSSL to 0.9.8d
- Update to OpenSSH 4.5p1
- Update to Bind 9.3.2-P1
- Update to less 3.9.4
- Update to awk 20050424
- Update to file 4.19
- Update to tcpdump 3.9.5
- Update to libpcap 0.9.5
- Synchronize m4 with FreeBSD
- Import libarchive
- Import bsdtar 1.3.1 and make bsdtar our default tar. GNU tar
is still installed as gtar.
- Import NetBSD's ftp client under its new name (tnftp).
- Bring in GCC-4.1 (setenv CCVER GCC41 to use).
- Significant code cleanups to make the world and kernel compile
under GCC-4.1. Note that the default compiler is still GCC 3.4
(GCC-4.x will probably become the default sometime in 2007).
- More work on LWP/THREAD/PROC separation for 1:1 threading support.
- Fix a major bug in /bin/make that can cause make (or some child
make in a large build) to ignore ^C. make temporarily installs
SIG_IGN when polling whether a signal is being ignored or not.
Fix the code to not do this.
- Fix a long standing signal/fork race that could cause a process
group signal to not make it to a newly fork child if it occurs
while the fork is in progress.
- Synchronize the zoneinfo database with tzdata2006p.
- Add an ECC detection device, currently supporting AMD64's memory
- Greatly reduce the memory allocated by fsck when fscking
filesytems with a huge number of directories (primarily mirors
with lots of hardlinked files). Otherwise fsck can run out
of memory on such filesystems.
- Adjust RCNG to support 'blah=YES/NO' as well as
'blah_enable=YES/NO', giving us better compatibility with
PkgSrc based RC scripts.
- Fix a bug related to ALTQ when setting the algorithm for a queue
on which packets are already present.
- Do a major clean up of the BUSDMA header file architecture.
- We have a new web site layout!
- Use spinlocks in the objcache instead of tokens (the critical
path is still lockless).
- Replace the global VM page hash table with a per-VM-object
- A considerable amount of work on IPSEC support has been done.
- NATA has been ported from FreeBSD and is currently being tested.
- Sync USB support with FreeBSD6 - use task queues to handle
operations that cannot be handled from an interrupt thread.
- Explore low-speed USB busses during cold boot so the USB keyboard
starts working earlier in the boot sequence.
- Start introducing glue for the SYSLINK and CCMS infrastructures.
(system link protocol and cache coherency management subsystems).
- Introduce a system call skeleton and test code for SYSLINK.
- Introduce the algorithm and structural topology that will be
used for cache coherency into the VFS path.
- Introduce a user-managed virtuallized page table infrastructure
which can be accessed via mmap(), as part of the infrastructure
to support virtual kernels running in userland (MAP_VPAGETABLE).
- Introduce vmspace_*() system calls which allows a user process
to manage and control multiple VM spaces, as part of the
virtualization support effort.