The 2.4 release will attach disk drives by serial number. Matthew Dillon’s written up a quick HOWTO that describes how to use it. The interesting effect, as he notes, is that a drive can be attached in almost any way – a firewire enclosure, directly to the motherboard, through a card, etc. – and the machine will still happily boot without any changes needed.
For those of you running DragonFly 2.3.1 or later, I’ve updated the pkgsrc-2009Q2 packages on avalon.dragonflybsd.org to the latest versions on that branch. If you’re curious to see which were updated, I have a list after the cut:
Simon ‘corecode’ Schubert has removed GCC 3.4 and Kerberos 5/Heimdal from the base system. Kerberos hasn’t been building as part of base for a while, and is available in pkgsrc. It was also the last item that requires GCC 3.4, so buildworlds are little quicker now. (Cross your fingers that GCC 4.2 the current version doesn’t break somehow.)
If you have any remaining issues for DragonFly that you want fixed before the 2.4 release in September, link them to the ‘umbrella issue‘ in the bug tracker. It makes them easier to find.
Matthew Dillon’s made some improvements to Hammer’s read and write processes. To quantize this, he’s tested Hammer and UFS with blogbench and written up the results. The tl;dr summary: UFS performs well until the system cache runs out, and then it halts. Hammer has some overhead from saving all history, but doesn’t stop working under a much heavier load.
DragonFly’s size_t and ssize_t have been modified. This creates more exact warnings of 64-bit problems when building on 32-bit systems. It may cause trouble with pkgsrc, though, so it will be reverted before the release (on 32-bit) if needed.
Be careful if you’re running bleeding-edge DragonFly. A full buildworld is needed because of this.
I’ve got a number of little items, so more roundup:
- How much disruption happened in DragonFly after introducing a dynamic device system? Surprisingly, very little, as most of pkgsrc still builds. Thanks are due to Hasso Tepper for the corrective work.
- _why makes some very perceptive comments.
- Jordan Gordeev’s been working on the very difficult AMD64 port as part of his Summer of Code work. He says thanks for the help, and others reply in kind. Speaking of which, it’s possible to boot 64-bit DragonFly now, though it’s not production-ready.
I’ve always had trouble updating certain pkgsrc packages that happen to also form the basic tools for pkgsrc – pkg_install, bootstrap, etc. Hasso Tepper has very kindly written up a note describing how to update these packages with newer versions of pkgsrc.
Vinum’s been changed to work with devfs, with the advantage that drive labels instead of device paths can now be used. There’s some caveats – read the message for details.
Dear universe, including DragonFly people: stop doing so much stuff. It’s hard to keep up.
- Git in One Hour, an O’Reilly webcast. You need to register (free) and so on, but what the heck. O’Reilly doesn’t show crap.
- Poul Henning-Kamp is suing to recover the cost of Vista on his Lenovo laptop. (He’s installing FreeBSD.) I hope it comes out in his favor, though it will have little legal effect here in the U.S. (via)
- I didn’t realize this until I chimed in on the mailing lists, but one of the best books about file systems is freely available as a PDF.
- Another benefit of Hammer: you can’t run out of inodes, nor is it possible to have too many hardlinks.
- Some notes on pf usage in DragonFly. I know some parts have been mentioned before, but it’s good to sum up.
The amount of swap space usable under DragonFly has gone to a theoretical max of 4 terabytes. The practical limit is probably around 512 gigabytes. As Matthew Dillon writes, this could be interesting when paired with SSDs.
As Hasso Tepper pointed out, having GCC 4.4 in DragonFly is unique to DragonFly. Systems like pkgsrc don’t work due to the changes in headers and etc. between gcc 4.2 and 4.4, and since no other BSD uses gcc 4.4, the fixes would all have to come from DragonFly (and be backward compatible). This is unlikely to change in the near term, since this newer version of gcc is being refused due to the V3 GNU Public License, not a technical issue. It’ll stay in DragonFly for now.
However, you can specifically exclude it and speed up buildworlds with the new NO_GCC44 option. It’s also possible to use NO_GCC34 in make.conf to keep the old version of gcc from building, for those who don’t like to wait.
I totally missed this, but Sascha Wildner reminded me: Alex Hornung now has commit access to DragonFly, due to all the devfs work he’s done.