Summer of Code projects getting committed

Matthew Dillon’s committed the work by Daniel Flores on Hammer 2 compression and Mihai Carabas’s vkernel hardware support – both Summer of Code projects.  There’s a good amount of detail in the commit messages describing the work and what it changed; I expect more Summer of Code work to be getting committed…

Note: you’ll want to do a full update.

Rough network queues added

Sepherosa Ziehau has added a sort of queuing to altq, where TCP ACKs get higher priority.  You may have seen this in any number of pf configurations, where returning data is given its own queue to keep high-volume transfers from slowing themselves down because the acknowledgements can’t get back to the sender.  His commit has statistics on the performance improvement.  He also added a ‘netrate‘ tool for calculating results from using netperf.

Symbol versioning coming in, also buildworld

If you’re using DragonFly 3.5, your next update should be a full buildworld.  That’s because John Marino is adding the framework for symbol versioning.  This means that individual library (.so) files will internally keep track of newer and older symbols.  The current behavior is to name the files differently, which can cause problems if an expected, linked file is missing – even if the needed symbols are present.  The basic framework is being added now, and will be turned on all at once, to minimize the number of times that full buildworld is needed.

Old amd64 removed and extra upgrade step added

The ‘amd64’ specific parts of kernel architecture have been removed, since x86_64 covers all that.  As a side effect of other changes, John Marino warns that upgrading DragonFly from a version older than 3.4, to a version newer than 3.4, will require an intermediate step of going to 3.4 first.  e.g. If your machine is a DragonFly 3.0 system, you will need to upgrade to 3.4 before moving to, say, 3.6 once it is out.  This won’t matter for some months, since the next release is months off.