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.
DragonFly builds two compilers by default. If you weren’t interesting in building both, there were switches to build only the default, like NO_GCC47. This changed with every compiler update.
With the switch to GCC 5, the new switch is “NO_ALTCOMPILER”. That will last through compiler changes. I’m mentioning this now because sooner or later, you’ll want to gain back some time on a buildworld.
DragonFly now has GCC 5.1 release. If you are running DragonFly master (i.e. 4.1), you’ll probably want to both rebuild world and kernel, and update your packages so they all match. There’s already packages built with GCC 5.1, so binary package upgrades can happen quickly. There’s GCC 4.7 packages still available if you aren’t making the jump yet.
If you’re on DragonFly 4.0.x – nothing’s changed.
I’m late posting about these, but they go together: Sepherosa Ziehau has added the ability to read CPU temperature through various sysctls, and the same for DIMM temperature readings.
Matthew Dillon bought a system with a Broadwell series CPU, installed DragonFly, and wrote up his experience. Read it if you plan on purchasing this hardware any time soon.
Here’s some comments from Matthew Dillon on page coloring in DragonFly; a topic that comes up every year for some reason.
The release candidate for GCC5 (5.1.0) is out, and it’s in DragonFly too. It’s not yet switched over to run as the default – that’ll require the release.
The default compiler in DragonFly is going to change over from GCC 4.7 to GCC 5.x very soon, to match the GCC 5.1 release. This means that packages built for DragonFly-master won’t be compatible with the old ones. You will need to reinstall packages when you next ‘pkg install’. John Marino has an extensive writeup detailing what’s needed, and the actual change is some days off.
If you are using DragonFly 4.0.x (the release), this doesn’t affect you at all.
Francois Tigeot has a new update to the drm/i915 driver for testing. It matches, feature-wise, what’s in Linux 3.12. Try it if you’ve got the hardware. (and dragonfly-master)
I have had trouble with my daily/weekly periodic reports never making it to my GMail account. Sascha Wildner pointed out to me that periodic.conf has its own answer already:
… and newsyslog is already set to take care of them. There’s more in the periodic.conf man page.
There’s been some linking to the updated HAMMER2 design document. The Reddit link doesn’t have anything specific, but the Hacker News one has some details (including a credit code!) for installing DragonFly on a Vultr VPS.
The most recent (well, this is the mostest recent) update of ACPICA for DragonFly, by Sascha Wildner, is different from the usual import: it happens to include actual upstream support for DragonFly
This week’s BSDNow talks with Baptiste Daroussin about developing and using pkg, for ports and for packaging the base FreeBSD system. (Baptiste has been seen on #dragonflybsd, since pkg is on DragonFly, so I’m sure there’s some relevant bits there, too.) There’s also the usual news summary.
I haven’t been drawing enough attention to it, but there’s been a bunch of HAMMER filesystem activity lately: First, Tomohiro Kusumi has been working on HAMMER – these posts are a small subset of his commits. Second, Matthew Dillon has been working full steam ahead on HAMMER2. The HAMMER2 design document has been updated (read this!), and he’s already accomplished master->slave disk syncing.
It’s not ready for production, of course, which you may already realize, so don’t install it unless you want to work on the code.
If you’re part of a BSD user group, please let me know your schedule. I’m able to catch NYCBUG announcements cause I’m on their announce@ mailing list – but I could use more.
Do you use info pages? Yeah, me neither. John Marino’s removed or converted the various info pages already in DragonFly, and removed texinfo since it’s no longer required. (I’ve linked to a few examples, but there were a number more commits than this.)
The default .cshrc in DragonFly has had some changes, which shouldn’t be anything but handy… assuming you are using tcsh. Also: the loader menu defaults to a blue Fred, now.
In the process of committing binutils 2.25 to DragonFly, John Marino also broke its build into parallel parts and removed the build of the gold linker. Buildworlds should be noticeably faster now, though I don’t have a before/after.
John Marino’s written an extensive page about wireless and DragonFly, on dragonflybsd.org.
If you’re looking to change your DragonFly system’s keymapping to support a non-US character set, use this users@ post from Adolf Augustin as a cheat sheet to make all the right changes.
Matthew Dillon answered some mailing list questions on how clustering and data copies will work in HAMMER2 – no due date, of course, because this is very complex. If you’re really into it, there’s always watching the recent commits.