Do you have a Via CPU? Do you use padlock(4)? (The driver for cryptographic functions, which Via processors support with hardware acceleration) Alex Hornung made some untested changes to support the hardware random number generator, but he needs people to test it.
Venkatesh Srinivas is making vmobj_token and vm_token much more fine-grained. That’s great, but watch out over the next few weeks as this work goes into 2.11. (i.e. don’t upgrade your DragonFly 2.11 unless you are ready for surprises.) Venkatesh has already found some.
The i386 architecture now supports LAPIC and I/O APIC. If you had weird interrupt problems when installing DragonFly before, now might be a good time to try the latest bleeding-edge version of DragonFly and see if the problem vanished.
John Marino has made it possible to use ‘gold‘, the new linker in binutils 2.21, on DragonFly. His explanatory post outlines the benefits (much faster C++ compiling), and caveats (does not work yet for building world/kernel).
It looks like Sepherosa Ziehau is working on getting multiprocessor kernels able to boot on single-processor systems. This makes life a bit easier, since there’s only one kernel needed for any given processor. I don’t know if it’s in a finished state yet.
Thanks to John Marino, the one dependency needing libgnuregex is gone, as is the software itself. I didn’t even know libgnuregex was there.
If you have a really old DragonFly system, meaning you’ve been upgrading it since version… 1.8 (I think?), you may have libpthread linked to libc_r instead of libxu. This means that if you have a system that old, you will now need to set THREAD_LIB or just recompile your pkgsrc programs on your next upgrade to something after DragonFly 2.10. I don’t think this is going to apply to a lot of people.
(I hope I got the lib details right…)
ipfilter has now been removed from DragonFly, by Sascha Wildner. We now have “only” ipfw2 and pf for software firewalls.
John Marino has updated the GNU Debugger (GDB) from version 7.0 to version 7.2. The lengthy commit message describes how surprisingly complex the upgrade proved to be.
John Marino’s gone on a tear and updated GCC to version 4.4.6, diffutils from 2.87 to 3.0, and texinfo from 4.8 to 4.13. Each commit message that I linked to has plenty of notes on what’s different, so they’re worth following. This is the first update for texinfo in 6 years, so the quantity of updates is not surprising.
Then use the new LINT64 config added by Sascha Wildner. LINT kernels have every option turned on, so it’s pretty easy to have problems due to conflicts or untested parts and so on. You probably won’t get a kernel out of it, but now there’s a comprehensive list of your 64-bit kernel options for when you’re building a kernel that works.
GNU grep on DragonFly has been updated from version 2.4d to 2.7. Other BSDs have switched/will switch to bsdgrep, but as John Marino points out in his commit message, GNU grep’s still faster. He’s also brought in NetBSD’s version of sort, to replace the GNU flavor. I don’t know why on that one.
Peter Avalos also updated file to 5.06.
Thomas Nikolajsen has put together more information on Hammer, including formatting and the new deduplication features, conveniently located in the man pages and some other spots.
Sepherosa Ziehau has made some changes to default SCI settings in ACPI. This may make it possible to boot a computer, or to boot a computer with ACPI, that did not boot before. If it causes problems, he lists some various tunables to set. Just don’t ask me what SCI does.
Peter Avalos squeezed in one more thing before the DragonFly2.10 branch: an update of OpenSSH to version 5.8-p1. This is mostly a security fix upgrade to 5.7 – see the OpenSSH release notes for details.
Welcome John Marino, who has been working on some rather difficult updates for gcc and other toolchain items.
Sascha Wildner has moved gcc in DragonFly to a slightly newer version: 4.4.5. It mostly seems to make things easier to compile, going by the reports I’ve heard. This is the version that will be in DragonFly 2.10.
Enabling the vfs.hammer.double_buffer=1 sysctl will greatly improve Hammer performance when you’ve exceeded your memory cache (at a possible slight penalty when you have not) and also speed things up when using live deduplication.
Update: Venkatesh Srinivas says:
“double_buffer makes sense when: 1) you want all CRCs to be checked on reads. 2) you’re running live dedup and care about dedup performance rather than say read-heavy performance; 3) you have swapcache but are often running into the vnode limit in what you can cache.”
So, not always useful.
Sascha Wildner has updated the default version of binutils in DragonFly from 2.17 to 2.21. You’ll want to do a full buildworld on your next upgrade, if you’re running DragonFly 2.9.
Also, Matthew Dillon has made version 6 the default version of Hammer in DragonFly 2.9. Version 6 has improved handling of directory names in some circumstances. Just don’t ask me which, cause I lost track. It’s been a hard day!
If you’re using pf to control how your bandwidth is used, you may want to look at the recent fairq updates from Matthew Dillon. It should perform better now in situations where one traffic group is saturating its available bandwidth. Here’s a handy link that explains this sort of problem, yoinked from IRC.