David Rhodus has added the twa(4) driver, for the 3Ware Escalade 9000 series storage controller, based on Vinod Kashyap’s version in FreeBSD.
Eirik Nygaard has committed diffutils 2.8.1 into the tree. This is similar to previous third-party software additions in that DragonFly-specific changes are managed through additional patches to original code, not by creating a DragonFly-only version of diffutils. Future upgrades are made much more easy using this method.
Matt Dillon has added negative caching for NFS, meaning that NFS will now cache failed lookups, not just successful ones. He details the benefits like so:
“This makes a HUGE difference for programs which search nfs directories, such as compilers (the header file search path),
make, and a few other utilities. NFS packet traffic can be reduced upwards of 90%. For example, with
/usr/srcmounted via NFS, building libc a second time without negative caching generates 66000 packets of NFS traffic in each direction, building libc a second time with negative caching enabled generates 9500 packets worth of NFS traffic, in EACH DIRECTION. While it is true that negative lookups are cached on the NFS server, the huge reduction in network traffic and equivalent reduction in synchronous read latencies result in radically reduced overheads across the board for operations which generate a lot of negative hits. A buildworld test with the default 3 second negative caching timeout went from 2265 seconds to 1900 seconds.”
Hiten Pandya has created a doc framework similar to the FreeBSD docs, though not yet as deep. If you are itching to contribute, and don’t want to code, this is an excellent alternative.
Dheeraj Reddy submitted (and David Rhodus committed) C versions of
catman, removing yet another Perl dependency.
Andre Nathan submitted (and Matt Dillon committed) a change for
route from NetBSD/OpenBSD that a ‘
route show‘ command, which performs nearly the same as
netstat -rn. Matt Dillon also added a -w option so that all columns would print full size.
Among other source changes today, Matt Dillon made a change to the way priority is set for new processes, which should fix what he calls the ‘jerky X pointer’ problem. He also fixed the systimer in such a way that
nice now actually works. The result is that your DragonFly system should now be even more responsive under heavy load.
Hiten Pandya has finished the if_xname work; you can now do:
# ifconfig fxp0 name 'LAN'
# ifconfig fxp1 name 'WAN'
And then refer to these network interfaces by the ‘LAN’ and ‘WAN’ names. These are aliases, not changed names, so the original names –
fxp1 in this example – will still exist.
Dheeraj Reddy submitted (and Eirik Nygaard committed) a patch taken from FreeBSD that removes Perl from mergemaster.
Matt Dillon and Hiten Pandya have changed NFS to default to the largest block size possible (32k), which should speed up all higher-bandwidth NFS connections, but especially NFSv3 via TCP.
Matt Dillon has committed code that increases the default socket buffer for NFS to
65535 bytes. This can be changed with the sysctl ‘vfs.nfs.soreserve’. This should improve performance.
Matt Dillon has placed inital IPC support, using a message structure that is described in the extended entry here, taken from his commit message:
Continue reading “CAPS IPC started”
Perl is no longer required for building a i386 kernel, thanks to Eirik Nygaard. It may also not be required for other platforms, but it’s only been tested on i386 as of right now.
If you update your sources and compile using gcc3, it now includes stack smashing protection, committed by Joerg Sonnenberger. Compiling using gcc2 already includes that protection.
David Rhodus has added support for the Silicon Image SATA controller.
Aaron Malone submitted (and Hiten Pandya committed) a whole lot of man page changes to account for changes from FreeBSD to DragonFly in system name but not history. Specifically, the HISTORY sections. It’s not glamorous, but it’s good to do it.
Joerg Sonnenberger added a driver for the ‘bfe’ device, which is the Broadcom DCM4401 NIC.