If you happen to still be running DragonFly 4.0 – that’s two releases ago and not supported – you may be noticing less ports are building. There’s been enough significant changes in DragonFly since that release that it’s reducing the number of buildable ports.
DragonFly 4.0 to 4.2 is not a difficult jump, so jump when you can. The converse of this, of course, is that there’s even more building on 4.2 and DragonFly-current.
Charles Musser updated rtadvd and added rtadvctl for DragonFly, based on what’s in FreeBSD (which is based on KAME? I’m not sure). This is most useful if you are using IPv6.
Matthew Dillon brought over the FreeBSD iwm(4) driver to DragonFly, with some changes. This is useful to anyone with Intel “Dual Band Wireless AC” 3160, 7260, or 7265 units.
I mentioned Endless Sky in the last Lazy Reading post as a game that might run on DragonFly. ‘Romick’ took that as a challenge and got it working; he’s posted the steps he took so that anyone else can do so.
Noticed both in a commit message and in tonight’s BSDNow, Imre Vadasz has added Panel Self Refresh (power saving) capabilities, set with a sysctl.
John Marino’s committed libc versioning. He has a post describing it, along with a note that anyone DragonFly-current should do a full buildworld/kernel and also update all installed packages. (Update: those new packages are on the way.)
John Marino is working on versioning libc, and as part of that process, libc is no longer loaded into executable memory. Here is I think an explanation of lib versioning that may apply, and of course moving things that aren’t supposed to execute, out of executable memory areas, is good for security. There’s more on that topic, too – W^X may be a similar example.
This is a complicated topic that I’m not part of, so suggest better descriptions in the comments, please.
HAMMER2 recently gained the ability to be used as the root mount for your DragonFly system. Live deduplication of data is also now possible, which means fast copy operations, less space used, and no need to wait for an overnight batch process to do it. If you want to try it, you need a bleeding edge DragonFly system and the WANT_HAMMER2 option. It’s still not ready for production use, so don’t try it with any data you want to keep.
Francois Tigeot has stepped i915 support in DragonFly even farther, this time bringing it to match Linux 3.17. This may be most useful for those with Broadwell and Cherryview chipsets.
I don’t note it enough, but Tomohiro Kusumi has been making constant updates to HAMMER, the version we have now. Often they are the sort of update that makes the code more readable, or fixes possible problems, and so on. Very essential, but hard to post about it. In any case, I’m using his recent improvements to hammer volume-del to note his contributions, of which there are much more than the day’s worth I link here.
Francois Tigeot has pushed in some significant updates from Rimvydas Jasinskas, updating the radeon driver to match Linux 3.17. Try it if you have the corresponding hardware.
Matthew Dillon posted an extended description of how to run Firefox in a way that completely locks it away from your user account. As a side effect of this, the current crop of dports binaries has been updated.
Did you know that AT&T maintains a
regex library and test suite? I did not, but now DragonFly has both, in part for better multibyte character support.
(corrected to note that the regex library is not from AT&T – thanks, anonymous commenter)
Most of the news is about Intel video support, but Radeon direct rending improvements are coming too. ‘zrj’ have brought up drm/radeon support to match what is in Linux 3.12. Worth trying if you’ve had problems with your Radeon and audio, going by what I’ve seen people report in IRC.
The vi in any BSD is not the original Berkeley vi – instead it’s usually nvi. However, thanks to John Marino, DragonFly has the up-to-date, multibyte-supporting nvi2. (I know I’ve made reference to the nv/nvi difference before.)
If your DragonFly-running c720p (the touchscreen model) occasionally decides to go perma-bonkers, Matthew Dillon has added a method to reset it, either on reboot or by setting debug.atmel_mxt_reset=1.
Sepherosa Ziehau posted some information on a project for anyone interested: ACPI Collaborative Processor Performance Control. It’s an extension of p-state power management, and he’s already done a lot of groundwork to support that in DragonFly.
There’s been a bugfix-release to the release version of DragonFly, bringing it to 4.2.4. This is to fix a rare crash on issuing ‘shutdown -h now’. If you haven’t had this problem, there’s no rush to upgrade.
Francois Tigeot has updated i915 support to match what’s functionally in Linux 3.16. Accelerated video on Broadwell chipsets is now fully supported, plus a bunch of other changes mentioned in his commit message.
If you are running DragonFly-master, there have been fixes for a wrong uname (my fault) and initrd image booting with encrypted drives. Update if you are running on the bleeding edge, if you haven’t already.
If you are sure you don’t need to look at your boot menu for very long in DragonFly, you can make it zip by quickly.
It’s an unexpectedly diverse list this week.
If your DragonFly machine can do it, it will now run an accelerated console by default.
A DragonFly machine with a lot of network traffic will have a significant amount of memory consumed by all the running network connections. (as with any system) It’s now possible to adjust the amount of memory set aside for those operations, live. This sort of fine-tuning will only matter if you run an extremely busy machine, but it’s worth it if you do.
John Marino has been updating locale support in DragonFly. There’s no single explanatory commit to point at, so I’ll instead link to the many, many commits and changes he’s been making to show the size of the work. If you are anywhere other than UTF-8 (or maybe even then), this will help you.
Francois Tigeot has a new i915 video branch for testing, if you are running DragonFly-current. It will be especially useful for people on a Broadwell chipset.
I’m globbing these DragonFly updates together in a single post because I’m running behind:
ACPICA was updated to Intel’s newest version: 20150717.
GCC in DragonFly was updated to the 5.2 release.
DragonFly DRM (that’s Direct Rendering) now supports ValleyView chipsets.
hostapd, for creating a wireless access point, has been included in DragonFly along with wpa_supplicant, for a long time. Like wpa_supplicant, there’s a version in dports that is the latest version and is easier to update (e.g. no system update required to get a newer version.) Unlike wpa_supplicant, there’s no chicken-and-egg installation problem if it’s not in the base system – so out it goes.
If you’ve previously tried to install DragonFly using a USB thumb drive, and it would somehow not be found to boot from, there’s a potential fix.
DragonFly ships with wpa_supplicant, for setting up WiFi. However, there’s no guarantee it’s the latest version. A solution exists: security/wpa_supplicant in dports. However, this has a chicken-and-egg problem, where you need wpa_supplicant to get online and download the dports version of wpa_supplicant. So, DragonFly still includes wpa_supplicant in the base system, but you should upgrade to the dports version when possible.
DragonFly now has the same math library (libm) as OpenBSD, replacing an earlier combined version of I think what NetBSD and FreeBSD ran. This doesn’t necessarily directly affect you, but it’s work worth doing; matching the underlying frameworks between BSDs helps everyone.
Sepherosa Ziehau has been doing a lot of work with various processors states to save power on DragonFly. He’s published a summary of how well the various P-state/C-state/mwait settings work. He found that setting a lower C-state can perversely improve performance.
For those saying “but how do I set these lower power states?”:
sysctl machdep.mwait.CX.idle: AUTODEEP
sysctl machdep.cpu_idle_hlt: 1 (or higher)
Do you have a ValleyView GPU? It now works much better in DragonFly, and there’s a new accelerated rendering branch to try out, too, if you follow that link.
Hey, my stickers arrived! You can order your own.
I don’t have actual numbers, but I do have a note: DragonFly network performance is pretty darn good.
There was a newer release of OpenSSL (1.0.1p) last week, so there’s a new revision of the DragonFly release – 4.2.3. There’s little major change other than the security fix for OpenSSL.
Those readers who can count past 2 may notice that there wasn’t a 4.2.2. We went straight from 4.2.1 to 4.2.3. That’s my fault. I screwed up tagging and Git doesn’t like repeated, deleted tags.
I don’t know enough about Erlang and LFE to say much other than “Hey, look at this article about installing LFE on DragonFly!” (via)
Here’s how you test the console frame buffer on DragonFly, even though X is the way to go.
There’s yet another security problem with OpenSSL, and it’s been updated in DragonFly. I’ll probably roll 4.2.2 this weekend so that it’s in the release image.
Some time ago, I acquired a Chromebook with the help of all you kind readers. Here’s a mini-report on how DragonFly works as a desktop.
The hardware: what I have is an Acer c720 Chromebook. The C720p is the touchscreen model, and is equally well-supported by DragonFly. A larger-capacity M.2 SSD (which is relatively easy to install) is the only real need, as the installed one is only 16G. It’s easy enough to see what the laptops look like; it’s nothing fancy but it’s suitably light.
The software: There’s a wide-ranging and complete install/tweak guide for the c720 and c720p on the DragonFly site. Note that it goes down to the point of even changing the keymap for the special keys on the keyboard.
Things I don’t like:
- The mousepad needs a physical click, not a tap, which decreases accuracy.
- There’s only 2G of RAM, and not expandable. You will notice this if you tend to open a lot of tabs when web browsing.
- I’ve had mousepad trouble, but I’m the only one reporting it, so I think it’s just bad hardware luck on my part.
Things I do like:
- pkg is a godsend, making installation and upgrades almost effortless. I’ve gone binary-only so far.
- Many things Just Work – for example, the xfce4 battery plugin.
- xscreensaver works great; even the 3D modules. I don’t know why it entertains me so.
- I haven’t run the battery out to make sure, but it looks like it would last a few hours. Suspend/hibernate are not supported, but low power modes are.
- There’s a lot of multi-touch shortcuts built into the touchpad.
It’s an excellent BSD laptop, for light use, at low cost. The next step up would be into Thinkpad territory, which raises the cost or increases the age – and may not be as consistently supported.
Something I’ve wanted for a long time: DragonFly stickers. Or ‘decals’, if you want to sound fancier. Markus Pfeiffer has them set up on Stickermule.
I just created an account there, and apparently I can supply a referral link which gets you and me both a $10 credit, if you use that. It’ll make you sign up, then you’ll probably have to go back in with the direct link for the DragonFly sticker.
Insert fireworks graphic here.
There’s a minor update for DragonFly 4.2 – this covers a problem with i915 support, so it’s worth upgrading if you have an Intel video chipset.
DragonFly 4.2 is officially released! You can go to the 4.2 release page for details, go to the mirrors page to download, or read my users@ post for upgrade steps.
Update: news stories and commentary seen on lobste.rs, Hacker News, and linux.fr.
If you wanted to try IPFW3 and NAT, nans_nans1 has done the experimentation for you, and wrote down the steps.
Sascha Wildner has been removing the no-longer-needed bits of i386 support in DragonFly. One of the things going away is APM, the 32-bit power management superseded by acpiconf. If you still type ‘apm’ out of habit, it’s aliased so you won’t be surprised.
Now that DragonFly can (in most cases) offer video outside of X with KMS, not just text, more console options are possible. By default, your accelerated console will scale to 80×25, but you can now tell it how many columns you want and it’ll automatically scale to fit your resolution. Or you can turn it off.
Thanks to Sepherosa Ziehau, powerd will now start the shutdown process if you are down to 2% battery on your DragonFly laptop. It also will delay for 60 seconds if you just booted up and are desperately searching for a power cable.
I’ve uploaded DragonFly 4.0.6 ISO and .img files. (Does that capitalization make sense?) They should be available at your nearest mirror, or will be shortly. I am still working on the 4.2 release candidate images.
The more eagle-eyed may have noticed a branching for DragonFly 4.2, and for DragonFly 4.0.6. The 4.2 branch is currently only a release candidate, so don’t necessarily change over yet – it’s for testing, not release.
Note that packages for 4.2 are not yet built, so you’ll have to manually specify a package path to install with pkg on 4.2 – for now.. That won’t be the case for the actual release, of course. DragonFly 4.3 users will have to specify PKG_PATH manually to use 4.2 images until new ones are built. 4.2 release candidate users will be fine. (see comments for correction.)
The 4.0.6 release is mostly to get the recent OpenSSL update into a 4.0.x build.
I am working on image building for both.
This week’s BSDNow has a talk with DragonFly’s very own Sepherosa Ziehau, about the huge amount of work he’s done on the network stack.
Matthew Dillon’s already using a 4K monitor on DragonFly, and he’s written notes on the various performance tweaks that went with it.
The direct memory access reservation on DragonFly has been set to 128M. It used to be 16, but anyone using a system for more than a text console would want the greater memory reservation. It can be set back to 16M, which is useful probably if you are one of those text console users, or if you have a strangely underpowered video card.
Even sysctl accesses can be made to handle multiprocessor environments. This can actually make a difference when you’ve got a lot of processors building a lot of software, as in all of dports.
From IRC today:
“19:43 <@dillon> I’m bored at the moment. lemme try to speed up module builds“
Buildkernel, depending on your processor count, now may have tripled in speed.
Those changes I mentioned yesterday for text console support? They’re in DragonFly-master now, along with a loader tunable to turn it on and off.
Right now, if you have a USB port and a need to get networked, axe(4) is your best bet.
If you are using a DragonFly system with accelerated video, and you have noticed that you can’t return to a text console after exiting xorg – Sascha Wildner/Imre Vadasz have a branch for you to try. Please do so if you have time and are on master; this is the last big item to fix before the next release.
In addition to all the Intel video updates that have gone into DragonFly, there’s been work on radeon support from Michael Neumann. This will show in the next release, coming soon. (Just a few patches more…)
If you’re using nginx on DragonFly, version 1.9.1 has specific DragonFly speedup options built in.
A short but more interesting list this week, I think.
Your Not BSD link of the week: Never fix anything.
Hammer 2 now uses LZ4 compression by default. It also uses a new CRC algorithm that performs much better, and there’s numbers to prove it. It helps iSCSI too. When I say new, it appears to be from the 1980s? I may be looking at the wrong place.
There’s a new ‘ifconsole’ option for /etc/ttys on DragonFly that may help you if your serial output device is a bit strange.
Matthew Dillon has been doing a lot of Hammer 2 work lately. Well, he’s been doing it for quite some time, but the recent commits contain the sort of things that are easier to link to, like deletion speedups, freemap changes, and stats tracking/compression results.
If you were running a version of DragonFly 4.1 (i.e. the master version, not release) built between the 20th and 25th, rebuild. There’s a UFS bug introduced in that short timeframe.
If you are running 4.0.x release or built your version of DragonFly-master outside of that date range – you are unaffected.
A recent commit from Matthew Dillon means users of Intel Haswell or later CPUs will see reduced power usage, if I’m reading this commit correctly.
Hammer will perform daily housekeeping tasks each night. If you’re up late enough, it may kick off while you are working. If you want to stop the process after it’s already started (since it’s disk-intensive), John Marino has added the ‘abort-cleanup‘ command.
If you want to use a scanner on DragonFly, install SANE. That is apparently all you need to do.
Experimental automatic crypting of swap is now available in DragonFly-master. Recently added, though it may have been possible another way.
leaf.dragonflybsd.org, where the DragonFly website is hosted, is temporarily down while a disk is replaced. Images and binary packages are still available.
This may not be a huge surprise, but the Minnowboard MAX can run DragonFly just fine, modulo some dmesg complaints.
Sepherosa Ziehau has introduced a new sysctl:
Set this to zero and you won’t get endless ARP events from networks you aren’t on. For example, I’m hooked up to a cable modem. I only get a public routable IP address, but the network used for the cable modem network itself bleeds ARP packets out where my DragonFly machine can see it. Since it’s on a different network segment than the address I receive through DHCP, it always fails and the system logs it. For example:
May 11 05:20:52 www kernel: arplookup 100.68.112.145 failed: host is not on local network
I can’t do much about it since that layer 2 leakiness is going to happen, but I can shut it up with this sysctl – and thank goodness, cause I’ve been seeing these messages since first using a DOCSIS modem in… 2001 or so?
Francois Tigeot has committed his Broadwell work, which has a longer-than-I-realized list of benefits. Does anyone have a 4k screen to try?
Jesse Wattenbarger wrote in with his success story of switching to DragonFly, both for server and desktop. Of note is his noticeable speedup with swapcache.
If you’re running DragonFly-master and you have an Intel video chipset, Francois Tigeot has an update for you. It brings accelerated Intel video up to match the Linux 3.14 version, adds Broadwell chipset support, and should generally improve performance. He lists how to test right in the message.
DragonFly committer Joris Giovannangeli has a Google Summer of Code project. He’s bringing Hammer2 to OpenBSD, in single-node form. It’s a very difficult project, but Joris is a very talented worker.
Tomohiro Kusumi has been quietly making a lot of commits to Hammer. I haven’t been linking them because they don’t necessarily equate to new features, but here’s an recent exception: the -A argument will make your Hammer command run on every PFS. It only affects reblocking/rebalancing – for now.
It’s been a relatively calm week, for once.
You can now export Hammer slave volumes as NFS mounts – but since slave volumes are updated from master, you’re mounting a snapshot of that point in time. That may actually be an advantage.