Release all the things! | BSD Now 147

Release all the things! | BSD Now 147

On this episode of BSDNow, we will be talking to Glen Barber & Peter Wemm of the FreeBSD RE and Cluster Admin teams! That plus our re-cap of BSDCan and the latest news, all on your place to B…SD!

Thanks to:




Direct Download:

Video | HD Video | MP3 Audio | OGG Audio | Torrent | YouTube

RSS Feeds:

MP3 Feed | OGG Feed | iTunes Feed | Video Feed | HD Vid Feed | HD Torrent Feed

Become a supporter on Patreon:


– Show Notes: –


2016 FreeBSD Community Survey

  • We often get comments from our listeners, “I’m not a developer, how can I help out”?
  • Well today is your chance to do something. The FreeBSD Foundation has its 2016 Community Survey online, where they are asking for feedback from you!
  • I just did the survey, it’ll take you about 5 minutes, but gives you a chance to provide valuable feedback to the foundation about things that are important to you.
  • Be sure to answer in as much detail as possible and the foundation will review and use this feedback for its operations going forward.

ART, OpenBSDs new routing table, single thread performances

  • OpenBSD has changed the way routes are looked up in the kernel as part of their path to an SMP networking stack
  • The “Allotment Routing Table” (ART) is a performance tradeoff, where more memory is used to store the routing table, in exchange for faster lookups
  • With this new arrangement, a full BGP routing table will grow from 130MB to 180MB of memory
  • “ART is a free multibit trie based routing table. To keep it simple, it can be seen as using more memory for fewer CPU cycles. In other words, we get a faster lookup by wasting memory. The original paper presents some performance comparisons between two ART configurations and the BSD Radix. But how does this apply to OpenBSD?”
  • “I asked Hrvoje Popovski to run his packet forwarding test on his Xeon box (E5-2620 v2 @ 2.10GHz, 2400.34 MHz) with ix(4) (82599) interfaces. The test setup consist of three machines with the OpenBSD box in the middle”
  • “The simulations have been performed with an OpenBSD -current from June 9th. The machine is configured with pf(4) disabled in order to force a single route lookup for every IPv4 packet. Based on the result of the lookup the kernel decide if it should forward, deliver or drop the packet”

BSDCan 2016 Playlist

  • The complete set of videos from BSDCan is online and ready to be consumed
  • Remember the good-ole days where we would wait months (or years) to get videos posted from conferences?
  • Well, who are we kidding, some conferences STILL do that, but we can’t count BSDCan among them.
  • Only two weeks out from this years exciting BSDCan, and all the videos have now landed on YouTube.
  • Granted, this is no substitute for actually being at the conference, but even if you attended you probably missed quite a few of the talks.
  • There are no videos of the hallway track, which is the best part of the conference
  • Except the dinner discussion of course.
  • and don’t forget the hacker lounge

Should you be scared of Unix signals?

  • Do you know much about UNIX Signals?
  • Are you afraid of their complexity?
  • Do you know there are signals other than SIGKILL?
  • This article talks about the practical implications of signals from a programming perspective
  • The things you need to consider when dealing with signals
  • Basically, you register a “signal handler”, the function that will be run when a signal arrives
  • As you program is running, if a signal arrives, your program will be interrupted. Its current state will be saved and any system calls in progress will return EINTR (Error, Interrupted), then your signal handler will be run.
  • Once the signal handler is complete, the state of your application will be restored, and execution will resume
  • As long as your program properly handles this interruption, and errors that might result from it (getting EINTR from a read() call, instead of the data you expected), then everything should be fine.
  • Of course, you need to be careful what you do inside your signal handler, as if you modify any variables or state in your application, it might be very confused when it resumes.

Interview – Glen and Peter-

News Roundup

Unik – The Unikernel Compilation and Deployment Platform (uses NetBSD’s Rump)

  • We’ve talked a bit about NetBSD’s RUMP (unikernel) in the past, including articles on how to deploy services using it.
  • Now we have an interesting project which makes the process super-easy, and dare-we-say almost “Docker-Like?”
  • The Unik project has a fairly complete walkthrough right on their GitHub project page, including details on installation and creating your own unikernel containers.
  • In addition, it provides instructions on boot-strapping your own Go/Node.js/Python/Java applications, and supports out of Box VCenter / AWS / Qemu / VirtualBox providers.

PkgSrc 50th Release Highlights

Migrating to FreeBSD from Solaris 11

How to chroot www/firefox on NetBSD

  • Looking for a jail-like method of running FireFox on NetBSD? (Or possibly other BSDs?)
  • We have a github repo with details on how to setup and run FireFox using a chroot using a “webuser” account for safety.
  • Think of this as a jail alternative, may be useful on systems with no jail support.
  • Of interest is the method used to do X forwarding. It uses Xorg TCP listen option (which is often off by default for security reasons). Perhaps SSH X forwarding would be a better alternative. (Or nullfs mounts of /tmp)

Beastie Bits


  • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to

Question? Comments? Contact us here!