Month: November 2011

ldns update to 1.6.11

Jan Lentfer has updated ldns in DragonFly to version 1.6.11.  This brings in a bunch of bugfixes, which can be viewed at the ldns site’s changelog.

Posted by     Categories: Committed Code, DragonFly     0 Comments

An unexpected way to do strlen()

The general rule of thumb is that if you have a function written in an interpreted language (Perl, Python, etc.), it’ll be faster in C.  If you need it faster than that, you go to assembly.  Prepare to have your world rocked: Venkatesh Srinivas found that strlen() in libc was actually slower written in assembly than in C.  His commit message has numbers to back that up.

Posted by     Categories: Committed Code, DragonFly     8 Comments

Being a good BSD neighbor

Adrian Chadd showed up on the DragonFly kernel@ mailing list, offering some help in keeping things compatible with FreeBSD and 802.11 networking.  That’s quite neighborly of him, especially since his hands are already pretty full.

Posted by     Categories: BSD, DragonFly, FreeBSD     0 Comments

Fast soaccept added

It’s another throughput tweak from Sepherosa Ziehau: soaccept is run differently when pulling in network data from a socket.  The commit message once again shows the results of the change using httperf.

Posted by     Categories: Committed Code, DragonFly     0 Comments

BSDLOSDR available

As Brooks Davis kindly posted to users@, FOSDEM 2012 will have a “BSD Licensed Operating System Developers Room”.  This has the most value to you if you’ll be near Brussels, February 4th and 5th.

Posted by     Categories: BSD, Conventions     0 Comments

Disk serial numbers and how to mess with them

Siju George asked about how he could figure out which serial number (in /dev/serno) maps to which disk.  Tim Darby posted a script he used for it, or you can just use devattr(8).  There’s also a linking trick described by Chris Turner to remember how the names map.

Posted by     Categories: DragonFly, Goings-on     0 Comments

Lazy Reading for 2011/11/27

Happy (post) Turkey Day for the U.S. readers!  A light link week this week.

  • Facebook is bad for the Internet.  ‘Gaslighting’ is a new term to me.  As that article points out, I can’t even put my posts to the Digest onto Facebook in any sort of automated way.  Facebook suggests that of course I’d love to retype them all by hand.  That’s not realistic.    Facebook doesn’t want any sort of useful external link to be visible to their customers.  Customers isn’t actually the right word; the customers are the advertisers.  What would be a better word for the users?  Crop?
  • the internet is above and beyond all else a resentment machine.”  It’s a very long essay that points out people are confusing brand identity with personal identity.  (via)
  • You know what would be good?  More conversations about games on BSD, cause it could use some attention.  Oh hey there you go.
  • A Dragonfly lamp (via Julian Gehtdichgarnichtsan)

Your unrelated link of the week: Animals Talking In All Caps.  It is what it says it is.


Posted by     Categories: BSD, Goings-on, Lazy Reading     1 Comment

Binutils update to 2.22

Binutils in DragonFly is now up to version 2.22 – the commit linked is one of several.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Even more Postgres results

Francois Tigeot has updated his PDF of Postgres benchmarks with some OpenIndiana results.  They’re crazy high, though he reported some freezes too, as with Linux.

Posted by     Categories: BSD, Goings-on     0 Comments

BSDTalk 208: Teaching BSD

BSDTalk 208 is out, where Will Backman talks for 15 minutes about how he uses BSD in his University of Maine UNIX class.

Posted by     Categories: BSD, Periodicals     0 Comments

fastbulk now added

Some time ago, Matthew Dillon worked on a bulk build system that built as much of pkgsrc in parallel as possible.  It’s in the tree now as ‘fastbulk‘, for anyone wanting to try it out.  I used it a bit; I didn’t measure the degree of speed increase, but was able to get about 70% of the packages built.

Posted by     Categories: Committed Code, DragonFly, pkgsrc     2 Comments

More network speed improvements as reported by netperf

Sepherosa Ziehau has implemented another networking speedup.  Read the commit message for details on what he changed, since it’s rather in-depth.  He shows an 18% improvement in netperf results.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Video and USB fix

Matthew Dillon has written a contiguous memory mapper, which is designed to fix problems with video cards and USB drives that need a big chunk of memory to keep.  This can affect booting or later on, when disconnecting/reconnecting a USB drive.  If this still doesn’t fix the problem for you, try adjusting the sysctl ‘vm.dma_reserved’ to something bigger, like 64M.  It defaults to 16M.

(Normal mailarchive isn’t updating because of an ongoing upgrade to – sorry!)

Posted by     Categories: Device support, DragonFly     0 Comments

What to do with /usr/obj

When building world and kernel on DragonFly, /usr/obj is where the work files get placed.  This can eat a bit of space, but it can be safely deleted.  If you keep the files around, subsequent rebuilds can be done faster with a quickwork/quickkernel, but this may not matter to you.

(This was answered on the mailing lists by Max Herrgaard, but I don’t have a link to his reply – sorry!)

Posted by     Categories: DragonFly, Goings-on     0 Comments

Lazy Reading for 2011/11/20

Hey, the date’s sorta palindromic!  Sorta.

  • “Bundled, Buried and Behind Closed Doors” – a video description of the physical parts of the Internet.  Remember when MAE-East or MAE-West would have a bad day and half the Internet felt it?  Really, half.  I don’t think I’m exaggerating. (via)
  • Google has a verbatim search mode now, for those of you who regret the loss of ‘+’ as a required search term designator.  (via and also sort of via)  There’s always alternatives.
  • The expr program is a real piece of crap.”  Laser-focused complaining about a small program that’s had 4 decades to improve, and hasn’t.
  • Mechanics for Pure Aesthetics”  The videos are interesting, and I’m linking to this because so much of what I post here and deal with is focused computer work.  Everything is a tool, with a purpose, and a result that you expect.  This idea of machinery or even software having a purpose other than result generation is underexplored.  There’s lots of tools to create art, but there’s little that is art itself.  Even with that general lack, we still get excited when the edge of some sort of aesthetic appeal nudges its way into the materials we use.  You could argue that Apple’s success (for instance) comes from being the one company that consistently thinks about what a product is, instead of what it does.
  • If you use fastcgi, you may need the patch that this blog post talks about.  Also, apache-mpm-prefork is the better choice for Apache on DragonFly.
  • DragonFly mug shot

Your random comic link of the day: Calamity of Challenge.  Also here.  And here.  If this artist’s way of drawing grabs you like it grabs me, he has pages and commissions for sale.

Posted by     Categories: BSD, Lazy Reading, Off-Topic, UNIXish     0 Comments

Linux results for that Postgres benchmarking

Remember the Postgres benchmark I described here a few days ago?  Francois Tigeot has updated it with numbers from Scientific Linux running the same pgbench procedure.  (see page 2)  If you’re too lazy to look at the PDF, his summary is this: Linux is fastest of all, and also crashes the most.

Posted by     Categories: BSD, DragonFly, Goings-on     0 Comments

Sendfile speedup

Sepherosa Ziehau has implemented an asynchronous pru_send in sendfile.  The results are a 70-90% increase in performance, as shown in his netperf localhost test.

Posted by     Categories: Committed Code, DragonFly     0 Comments

New bug tracker

DragonFly now uses Redmine for  This means that the bugs@ and submit@ lists have can still be read by anyone, but to post a new bug or patch, or reply, you need to be registered on the bug tracker itself.  You don’t have to be subscribed to the mailing list to use the web interface.  See the bugs@ and submit@ announcements for other details.

Posted by     Categories: DragonFly, Goings-on     2 Comments

How to make those regression tests

The man page for dfregress has been put together, and you can read it and find out how to contribute, right now.

(That man page should be up by the time this is posted…)

Posted by     Categories: Committed Code, DragonFly     0 Comments

New clang 3.0 and DragonFly work

Juan Francisco Cantero Hurtado has been working with clang and DragonFly, along with Sascha Wildner.  DragonFly mostly compiles using clang, with lib/citrus being (the only?  one of?) the last holdouts.  Juan Francisco Cantero Hurtado detailed how to test it out using clang 3.0 in case someone else wants to help solve this.

Posted by     Categories: DragonFly, Goings-on     3 Comments

route(8) changes require buildworld

If you’re tracking DragonFly current, you will need to do a full buildworld on your next update.  Sepherosa Ziehau made some changes in route(8) that a quickworld will not catch.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Huge speed improvements, plus graphs

The two things that make my day!   The work on DragonFly-current has led to some significant speed improvements.  So good, that Samuel Greear’s post on links to graphed results from him and from Francois Tigeot (multi-page PDF) showing the results from pgbench.

The results show a jump in multi-core/processor numbers that vastly exceeds DragonFly 2.10’s performance, and is comparable to FreeBSD 9/10.  Here’s some of what did it.

Posted by     Categories: DragonFly, Goings-on     2 Comments

dfregress, a new test framework

Alex Hornung has created ‘dfregress’, a test framework designed to be as simple as possible for adding tests to DragonFly.  This would make it easier to verify an upcoming release is correct, for instance.  See his commit note for extensive details, and add a trivial test for anything you value.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Appletalk goes away

This is another one of those features that I bet goes away, and nobody would notice because nobody uses it any more.  Sascha Wildner has removed AppleTalk from DragonFly.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Turning over a new leaf

The host has been upgraded to new hardware.  This is the machine used for anyone who wants to develop on DragonFly, so there’s a good performance boost there for developers.  It also hosts, which should be working again soon.

Posted by     Categories: DragonFly, Goings-on     0 Comments

A new memory allocator

DragonFly has a new memory allocator, called (not surprisingly) “dmalloc“.  It’s only present on x86_64, not i386, because it could eat up more VSZ (virtual memory) than an i386 kernel may  have available.

Posted by     Categories: Committed Code, DragonFly     1 Comment

Lazy Reading for 2011/11/13

I’m going for more verbose linking.  Because my opinion layered over a bunch of linkblogging is just what you wanted on a weekend, isn’t it?  If not – too late!

  • NYCBUG posts audio of their regular presentations, and I’m linking to this one by James K. Lowden, titled “Free Database Systems: What They Should Be, And Why You Should Care“.  He was one of the more colorful speakers at NYCBSDCon 2010, so this should be good.
  • It’s Slashdot, so whatever, but this “In Favor of FreeBSD On the Desktop” linked story had a few good comments – BSD hasn’t done enough to differentiate itself from Linux.  “BSD: In Need of a Narrative“.  Or perhaps, “Who cares if it’s clang or it’s gcc – what do you build with it?
  • I read this essay about social networks (via), and the last paragraph is an excellent summation.  Read it, then cancel your Facebook/Google Plus/whatever accounts.
  • Xv6 is a modern version of Sixth Edition UNIX, used at MIT for teaching operating system design.  (via)   The source is available via git, and as a numbered PDF.   The book for the class should make interesting reading.  Oh, you can see the class details, too.
  • FOSDEM 2012 in Brussels, February 5th, 09:00 – 17:00: “Open Source Game Dev”.   Get on the mailing list if this interests you.  Microsoft operating systems still rule the market for games, really, even indie work, so it’s neat to see something that is both open source and game oriented.  There will be BSD “devrooms” there, too.
  • If you are looking for a particular Unicode character (and there’s lots to choose from), Shapecatcher lets you draw what you are looking for and looks for matches.  (via)  I’ve needed that here a few times for people’s names, and it’s fun just to see what comes up from a random scribble.

Your unrelated link of the week: The New Shelton Wet/Dry.  Titles, content, and images are all picked from unrelated sources, but it forms an oddly compelling digest of multiple topics.  Slightly NSFW, sometimes.

Posted by     Categories: Conventions, Lazy Reading, UNIXish     3 Comments

HEADS UP: package recompilation needed

The presence of /usr/include/crypt.h in DragonFly (starting in December 2010) meant that some programs compiled during that time will expect that file to always be there.  It was recently removed, so any programs compiled in that timeframe will also need to be recompiled.  Right now, this affects you only if you are running DragonFly 2.13 , since that’s the only place crypt.h was removed.  This may be an issue for the release, but we’ll worry about that when we get there…  I’m kicking off new 2.13 bulk builds now.

Posted by     Categories: Committed Code, DragonFly, Heads Up!     0 Comments

New rpkgmanager page

There’s a new page up on the DragonFly website, about using rpkgmanager to manage your pkgsrc-installed packages.

Posted by     Categories: DragonFly, Goings-on, pkgsrc     0 Comments

Ways to eliminate C++

In DragonFly, there’s only a few places C++ is used.  If you wanted to make sure DragonFly was pure C, Samuel Greear lists those remaining nooks and crannies.

Posted by     Categories: DragonFly, Goings-on     10 Comments

DESTDIR: 31 left

Almost all the packages in pkgsrc support non-root installation now…  except these last 31.  I recall something about their removal by the next quarterly release if they still don’t work, or maybe just after.  Jump in if one of these packages is useful to you.

Posted by     Categories: Goings-on, pkgsrc     0 Comments

Do you have a lot of RAM? I mean, a LOT!?

You can now have, in theory, up to 32 terabytes of RAM on your 64-bit DragonFly system, from a change made by Matthew Dillon.  I’m curious to see if anyone has even 1 terabyte, as that’s at least feasible.

Posted by     Categories: Committed Code, DragonFly     1 Comment

libgmp, libmpfr updated

John Marino has updated two libraries needed for gcc 4.4: GMP and MPFR.  They are, as far as I can tell, both designed for mathematical functions.

Posted by     Categories: Committed Code, DragonFly     1 Comment

Do you have a Geode? Well, good news!

John Marino added tuning support within GCC 4.4 for the Geode CPU.   Waaaay back when, these were x86 -compatible Cyrix chips.  Nowadays I think they are most common in singleboard computers.

Posted by     Categories: Device support, DragonFly     1 Comment

BSD Magazine for November

The November issue of BSD Magazine is out.  No DragonFly content again, in part because I wasn’t even sure when the deadline was.  (The editor changed.)

Posted by     Categories: BSD, Periodicals     2 Comments

Pull pkgsrc from git again

Some cleanup in the CVS -> git process wasn’t happening, so if you have been using pkgsrc 2011Q3 from git (i.e. via make in /usr), re-pull to make sure you have everything.

(The post noting this seems to have been eaten by the mailarchive…  that’ll be replaced.)

Posted by     Categories: DragonFly, Goings-on     0 Comments

Planned maintenance

There’ll be some brief outages this week as a few of the machines are upgraded.  The new machines will be 64-bit DragonFly, and have 16G of RAM.  RAM is crazy cheap these days.  I’m continually dumbfounded by it.

Posted by     Categories: DragonFly, Goings-on     0 Comments

TIM number two

The Technology Innovation Management Review (used to be the Open Source Business Resource) has its second issue out since the rename.  There’s still plenty of open-source focus in there.

Have you noticed how what was nerd culture 20 years ago has become mainstream?  In the same way, open source is becoming a given assumption, rather than a niche to follow on its own.

Posted by     Categories: Periodicals     0 Comments

Lazy Reading for 2011/11/06

A bumper crop of articles to read this week.

Random unrelated link for the week: “War Photographer“.  This animation makes me so happy.

Posted by     Categories: BSD, DragonFly, Lazy Reading     1 Comment

Structure changes mean recompilation

This recent structure change (are there others like this?  Maybe?) means that existing binaries may need to be recompiled for anyone tracking DragonFly master.  This probably means that an upgrade from 2.10 to 2.12 will require rebuilds of all binary pkgsrc packages.

Posted by     Categories: DragonFly, Goings-on, pkgsrc     3 Comments

COMPAT_43 and COMPAT_DF12 gone

Well, they’re still available, but you don’t want them in your config any more because they can slow you down.  This will only affect you if you are running binary files from DragonFly 1.2 or earlier, or…  I guess a 4.3 BSD binary?  From 1986?  I’m sure there’s some other reason for it to be there.

Posted by     Categories: DragonFly, Goings-on     2 Comments

More multi-core improvements

Matthew Dillon wrote up an explanation of how performance on systems with a lot of CPU cores has been significantly improved – up to 300%!  (He says 200%, but I think he’s treating it as a percentage of a whole rather than percent changed.)  Apparently finally getting rid of lock contention is the trick.

Posted by     Categories: Committed Code, DragonFly     0 Comments