Major
authorsjg <sjg@web>
Tue, 26 Oct 2010 21:46:58 +0000 (14:46 -0700)
committerCharlie <root@leaf.dragonflybsd.org>
Tue, 26 Oct 2010 21:46:58 +0000 (14:46 -0700)
release28/index.mdwn

index 419ee83..c7a53ad 100644 (file)
@@ -78,12 +78,14 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
 * dsched, an IO Scheduler framework and dsched_fq, a Fair Queuing I/O scheduler policy.
 * Device Mapper imported from NetBSD.
 * stripe and crypt targets for the Device Mapper.
-* select/poll hoisted onto kqueue.
-* LWKT tokens reworked.
-* MP Lock removed from VM and pmaps (sorta: its still taken with the vm token, but the groundwork is there).
+* select(2), poll(2) and kqueue/kevent(2) implementations were unified on top of the existing kqueue implementation.
+* Device polling API's and selrecord/selwakeup were dropped, in favor of kqueue's knote API, simplifying device implementation.
+* LWKT tokens reworked to improve efficiency, especially in recursive scenarios.
+* Direct acquisition of MPLOCK removed from VM and pmaps, now under a global VM token.
 * VM: Idle time page zeroing.
-* Major update of pf  from OpenBSD 3.5 to 4.2, keeping DragonFly specific additions (support for pickups and fairq).
-* Major network work (NEEDS MORE DETAILS).
+* Major update of pf from OpenBSD 3.5 to 4.2, keeping DragonFly specific additions (support for pickups and fairq).
+* Network socket flags were made atomic.
+* Additional portions of the network stack were removed from under the MPLOCK.
 * Major performance improvements to softcrypto on SMP systems.
 * kern_udev - A framework to associate optional information with device nodes.
 * initrd (initial ramdisk/malloc disk) support.
@@ -92,21 +94,17 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
 * proplib imported from NetBSD.
 * Removal of the forth loader in favour of a C-only loader, 'dloader'.
 * Fixing of {MADV,MAP}_NOSYNC, resulting in a great performance improvement for vkernels.
-* add TCP-MD5 (RFC 2385) support to ipsec (XXX: or is it fast_ipsec?).
-* rewrite the LWKT scheduler's priority mechanism (XXX: more info?).
+* TCP-MD5 (RFC 2385) was ported from FreeBSD.
+* LWKT scheduler's priority mechanism was rewritten
 * Linux Emulation mostly MPSAFE.
-* Added renameat syscall (XXX: do we mention individual syscalls like this?).
+* Added renameat syscall
 * kfree() IPIs dramatically reduced.
 * Add support for cdevs as virtual disks for vkernels.
-* nullfs has now support for the noexec flag.
+* nullfs gained support for the noexec flag.
 * It is now possible to dump to dm disks.
 * Sync amdpm(4) with FreeBSD (and bring in amdsmb(4)).
 * Sync alpm(4) with FreeBSD.
 
-> ### HAMMER changes
-* foo.
-* bar.
-
 > ### Hardware changes (non-networking)
 * Driver for Areca RAID controllers (arcmsr).
 * aesni crypto driver.
@@ -115,17 +113,15 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
 * The uguru(4) driver for ABIT temperature, voltage and fan sensors was ported from OpenBSD.
 * twa(4) was synced with FreeBSD version 3.80.06.003.
 * New swapoff utility to turn off swap space.
-* TCP-MD5 (RFC 2385) was ported from FreeBSD.
 
 > ### Hardware changes (networking)
-* New wireless network card framework has been ported from FreeBSD by Rui Paulo.
- * Work has begun on porting drivers from FreeBSD.
-  * The following cards work: ath, iwi, iwn, ral, wi, wpi.
-  * The following cards have not been ported and will not work: acx, an, bwi, ndis, rtw, rum, ural.
+ * New wireless network card framework has been ported from FreeBSD under contract.
+ * Wireless cards utilizing the following drivers are supported in this release: ath, iwi, iwn, ral, wi, wpi.
+ * The following drivers have not been ported and will not yet work: acx, an, bwi, ndis, rtw, rum, ural.
 
 > ### Multiprocessor Safe Work
 * Major MPSAFE Infrastructure was done.
-* The following parts (as in source files) of the kernel are now MPSAFE:
+* The following parts (referencing source files) of the kernel are now MPSAFE:
  * imgact_resident
  * kern_mpipe
  * kern_plimit
@@ -142,10 +138,10 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
  * vfs_sync
  * vm_zeroidle
  * vnode_pager
-* The protocol drain routines as now MPSAFE.
-* The pf packet filter works now with the MPSAFE network stack.
+* Additional subsystems that are now MPSAFE: protocol drain routines, pf packet filter, kevent.
 
 > ### Userland changes
+* A catastrophic recovery command was added to the hammer(8) utility, allowing data to be potentially recovered from physically damaged media.
 * Power/CPU frequency management daemon named powerd(8).
 * libdevattr - A library giving access to additional information about kernel device nodes with an API that is mostly compatible with Linux' libudev.
 * udevd - A support daemon for libdevattr.
@@ -160,7 +156,7 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
 * ioprio, a utility to change the I/O priority of a process doing I/O on a disk with the dsched_fq policy.
 * lt, a 'tree'-like utility.
 * Ported savecore(1) from FreeBSD used to gather info from crash dumps.
-* Installer - It now uses tmpfs instead of mfs.
+* Installer now uses tmpfs instead of mfs.
 * Several fixes for the DragonFly Mail Agent (dma).
 * top(1) prints now Proportional RSS (PRES) instead of RSS.
 * pf(4) OS fingerprints for all DragonFly versions.
@@ -169,7 +165,7 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
 * nmalloc (libc malloc) gained a per-thread magazine layer for improved scalability.
 * A security issue in the libc globbing code was fixed.
 
-> ### amd64 related changes
+> ### amd64-specific changes
 * A number of rare race conditions was fixed. This improves overall stability.
 * It is now possible to use powernow(4).
 * It is now possible to boot an SMP kernel without having to enable `APIC_IO`.
@@ -198,6 +194,3 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
 **Packet Filter (pf)** - Pf was updated to a version based upon OpenBSD 4.2. The previous version of pf in DragonFly was based on OpenBSD 3.5. This, in addition to laying the ground for further following OpenBSD's implementation, introduced several performance gains: Information like route-to, altq, tags, etc are now stored in the `mbuf` header directly. This was partially already the case up to DragonFly 2.6, but now the implementation corresponds to OpenBSD's. Furthermore an often unnecessary checksumming was removed, which gains another 10% performance.  Also state tables and interface bound states were reimplemented and the pf_test_*() functions where fold into pf_test_rule() to make  things clearer. DragonFly-specific additions, support for fairq packet queueing and pickups, have remained intact.
 
 **WiFi Stack Update** - FreeBSD's WiFi (802.11) network stack has been ported by Rui Paulo.  While not all WiFi drivers have been ported the ability to port drivers from FreeBSD much more easily will allow us to ultimately add support for more and newer WiFi devices in the near future.
-
-**thingname** - thingsdesc
-