I’m a bit late on this, but: OpenPAM in DragonFly got an update to the “Resedacea” version. That most recent version lists only bugfixes, though I don’t know the age of the version we’re coming from and whether there were some intermediate upgrades in there.
Aaron LI continues to add to initrd(7): it now has scp, grep, diff, telnet, and 70 (!) more tools, bringing the total to over 200. That’s a lot for a “minimal” rescue image.
I’ve tagged and built DragonFly 5.2.2. This is mostly so that our current release image includes the fixes for the LazyFP bug, CVE-2018-3665. My email to users@ has upgrade details.
DragonFly has had NX (Non-eXecutable) support for some time. It’s now on by default for read operations in DragonFly master – not the current release. You can step it up to level 2, for write operations, with a loader tunable, but it may cause issues with dports.
Matthew Dillon’s added some patches to DragonFly related to securing floating point state, following similar work in OpenBSD. There isn’t a reported catchy-name issue to match it, like Spectre/Meltdown – yet.
(If anyone has a good link to the similar OpenBSD commits, please share; I did not find them on a cursory search.)
Update: the fix is now in 5.2 and an update is recommended.
There was an optional ‘make initrd’ step in the DragonFly build process, where you can create a small binary to use for mounting encrypted root drives.
Aaron LI has removed mkinitrd in favor of ‘make initrd’, which builds a separate binary to use in exactly those situations. See the commit message for more detail. It incidentally creates a ‘/rescue’ directory and works as a rescue ramdisk, similar to other BSDs, if you should ever need it. (See updated MOTD for details)
Rimvydas Jasinskas has added a few options to the buildworld process in DragonFly. These options let you skip rebuilding the compiler and binutils rebuilds, for a significant speedup: buildworld times cut in half.
See his excellent commit message for all the numbers. Note that this is for development work, so it’s not advisable for regular upgrades.
New DragonFly installs are chmod 700 for /root, not 755, from this recent change. Change your existing installation if desired.
If you’ve ever wondered what packages are needed to build a DragonFly release: here they are in one dports metapackage.
Sascha Wildner has brought in the last 9 months of ACPICA updates to DragonFly. This may mean better power or motherboard support for your hardware in DragonFly. I always have a hard time pointing directly to ACPICA updates and how they benefit, but looking at the changelog update may help.
This commit from Bill Yuan says “highspeed lockless in-kernel NAT”, and lists a huge number of changes for ipfw3. How much of a change is it? I don’t know; there isn’t a matching documentation update and I don’t have a way to test.
I like pointing out how political world events push their way into computer updates.
Thanks to Rimvydas Jasinskas, GCC 8.0 has been imported into DragonFly. It’s not built by default, so you’ll need to set WORLD_ALTCOMPILER to get it. Rimvydas mentions this is part of a 3-year upgrade cycle.
Note that he went the extra mile and made sure dports could handle it too.
A recent and new CPU bug, CVE-2018-8897, is fixed in DragonFly. THis applies to both Intel and AMD processors. I’m happy to see that the CERT page lists equal notification timing for a whole lot of operating systems, rather than the few that heard about Spectre/Meltdown early.
Following that topic, Matthew Dillon has “fleshed out” Spectre mitigations, and his commit message details the current state. The sysctl ‘machdep.spectre_mitigation’ will tell you what’s set at any given point.
Update: update.
systat in DragonFly has gained some new fields when using -pv. Read up on the tool if you have not used it before.
Matthew Dillon’s made some changes to the scheduler, with the result that nice(1) is really vigorous now about enforcing priority.
Here’s something that doesn’t have an immediate impact now, but will be useful down the road: Francois Tigeot has been working on DRM support in DragonFly, and has been quite successful with Intel video support. His strategy has been to adopt Linux methods where possible, to reduce the amount of support work. The payoff has been excellent, and prompt, accelerated video support in DragonFly. The most recent work is “git: drm: Implement parts of the Linux irq subsystem“, which is going to come in handy for someone, I’m sure.