…And before you say, “It would be great if someone would put together benchmarks”, think instead, “I’m someone, and I could do it.”
Francois Tigeot has brought in the ‘apple_gmux’ driver. If you have a Macbook with both Intel and NVIDIA video hardware installed, this driver lets you switch to the Intel hardware, and I assume take advantage of DragonFly’s accelerated i915 driver.
For those of you who build custom kernels, the if_sl, if_ppp, and if_faith devices are now built as modules, not in the kernel. This means you can remove references to them in your custom kernel config – if you have one.
As part of a larger conversation about security measures, NX bit capability was added to DragonFly. You can turn it on or off, and it’s off by default so it doesn’t cause any surprises. As the first link in this post points out, your installed third-party software is more of a security issue than processor features, in any case.
In my ongoing quest to actually catch up to all the DragonFly commits recently, here’s a recent update to machdep.cpu_idle_hlt. Set this to affect power usage. I’m linking to this list of the different settings because, like RAID levels, nobody can or should remember every one.
Continuing my catchup on recent commits, there’s now a ‘version 7’ internal to HAMMER 1. It changes the CRC code to a faster version, but since this instruction isn’t used (yet), there’s no real world impact. Remember this for next time you want to run ‘hammer version-upgrade’.
Yes, I know we just released 4.8. This is a rollup release, capturing everything that was committed to the 4.6 branch after 4.6.1 and before 4.8 came out. If you are going to upgrade, it’s worth it to go to 4.8, but this way there’s a clean final version in the 4.6 branch.
(Hat tip to Sascha Wildner for reminding me to do this.)
The longstanding practice is to load kernel modules in loader.conf, as early as possible. That’s good, for anything that needs them.
However, that also can be bad. Your machine can be unbootable if there’s a problem with a module or loader.conf is messed up, since that file is read long before the startup process finishes. Enter the new alternative: modules can be loaded in rc.conf, and the only loader.conf modules needed are those required by / to mount.
Matthew Dillon has been doing a significant amount of work on cache lines, and I haven’t been linking to it because it’s hard to point at single commits with such a technical subject. However, he’s summarized it all, along with news on NUMA handling and vkernel improvements.
Rimvydas Jasinskas posted an extended description of what’s happening with dports. There’s a significant xorg reformatting coming in ports, which is going to be absorbed into dports, but it may take some time. There’s also an odd loss of commit rights for John Marino, who commits (frequently!) to both DragonFly and FreeBSD. (His followup) This all translates to some upcoming transition time for dports to accommodate these changes.
Note that if you are using dports binaries, especially on DragonFly 4.6 release, this won’t really affect you; the way dports is set up, binary sets always work. It is interesting to hear about future work, in any case.
The ncv(4), nsp(4), and stg(4) drivers are now removed from DragonFly. So is the portal file system. Also, though not a removal, vm.swapcache.use_chflags now defaults to 0. Does this affect you? Almost certainly not! I feel compelled to point it out, though, just in case there’s that one person who didn’t want a surprise.
If you are on DragonFly -master, now is a good time to update. Matthew Dillon has been changing how DragonFly handles locking and memory use, with differences in the vmstat structure and page coloring, some memory settings, and many other locking changes. I am only linking to a few examples. If you don’t want to dig through those links for performance numbers, he summarized his changes and their effects in a post to users@.