Kernel modules in rc.conf, not loader.conf

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.

Near-term dports work

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.

Significant memory handling changes in DragonFly

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@.

Importing clang to base

Don’t get too excited yet – clang import hasn’t happened.  However, I want to draw attention to Rimvydas Jasinskas’ changes to alternate compiler handling, which would be for importing clang.  His commit message goes into some of the rather thorny problems of transitioning between compilers and releases.

Binutils changeout

DragonFly has had binutils 2.24 and 2.25 both available for some time.  2.24 has been taken out and replaced by binutils 2.27, thanks to Rimvydas Jasinskas.

The 2.25 version was and still is installed by default.  If you want to try out 2.27 instead, WORLD_BINUTILSVER=binutils227 is what you need.  I didn’t test that, of course.  The binutils changelog will tell you what’s different in 2.27.

EFI run-time ABI support in DragonFly

UEFI, which I casually sum up as the replacement for BIOS, has been seeing some support in DragonFly, but not within the installer.  Matthew Dillon and Sascha Wildner has ported over FreeBSD’s EFI ABI support, which I think means support for various EFI applications and features.  I haven’t booted a machine using UEFI in any significant way, so I don’t have a good explanation – but I am sure this is useful for people with new hardware.

Update: some explanation plus a note that it’s experimental and you could brick your machine.