Sascha Wildner has been using a new-to-me tool called coccinelle (no, not that) to scan for a number of problems. Patches for this tool may be useful for anyone else using coccinelle for bug-finding in other software.
BSDTalk 209 is out, and it’s a 16-minute conversation with Jim Brown about BSD Certification. (who I think I met at NYCBSDCon 2010; a pleasant guy)
The December issue of BSD Magazine is out, with the title “Rolling your own kernel”, though that’s just one of the articles there. No article from me this month.
The December issue of the Technology Innvation Management Review is out, with the theme of Intellectual Property Rights. Patents get used for Internet Outrage – read this and be better informed.
The FreeBSD Foundation is putting out their end of year donation notice. Donate if you can; the support for active developers there helps everyone.
Two tips for working with pkgsrc, derived in part from this mailing list post on users@ (follow the thread) and from my own experience. If you put WRKOBJDIR=/usr/obj/pkgsrc
into /usr/pkg/etc/mk.conf
:
- You can clean up any leftover package building files by deleting the files in that directory and leave your pkgsrc files untouched.
- You can have a read-only /usr/pkgsrc, which means it can be shared over NFS (or SMB?) between multiple machines, DragonFly or otherwise.
I’ve had a bunch of posts like this so far, but that’s not a bad thing. Sepherosa Ziehau has a pair of optimizations that appear to make performance with big pipes (1G) and tiny packets (18b, if I read correctly) reach near the physical maximum for 1000-base-T Ethernet.
Another week, another linkpile.
- Here’s some old software. I’ve got something older sitting on my shelf here, though.
- A patch to DragonFly, taken from OpenBSD, submitted by Loganaden Velvindron and committed by Venkatesh Srinivas. The patch isn’t that exciting, but it makes me feel cool to namedrop non-Americanized names. If only I could pronounce them!
- Speaking of which, there isn’t always a lot of comments on this Digest (which is good; a long series of comments on the Internet tend to be the result of trolling or inanity.), but the recent strlen() story led to some juicy details.
- Man, I wish this NoteSlate device existed. There’s the BoogieBoard, but it’s not quite the same.
I’ll make up for my relatively low number of links by asking a question: Where do you go for your end of year gift giving? Where do you wish people would go to buy you gifts? I’m looking for suggestions for a gift guide.
Your unrelated comics link of the week: Gun Show. This one and that one are my favorites.
I think a lot of people don’t realize rcrun exists, and run files in /etc/rc.d directly. If you’re one of those people, read the rcrun(8) manpage. Then, notice that Sascha Wildner has extended rcrun to work with the etc/rc.d in /usr/local and /usr/pkg too.
Francois Tigeot has been working for quite a while on a VFS accounting system. It doesn’t restrict to a quota (yet), but it will give you byte totals for each mounted filesystem. It has been committed, so it looks like a good way to tell which PFS is eating your disk.
Update: Francois pointed out he’s still adding parts for this. So it’s not quite done yet, but soon.
Buildworlds are now much faster, because they can run themselves in parallel. Invoke it using the -j option to make. Matthew Dillon saw a 25% reduction in time when using ‘make -j 12 buildworld’ on a 4-core system. You may need to manually update xinstall and mkdir:
cd /usr/src/usr.bin/xinstall make clean; make obj; make all install cd /usr/src/bin/mkdir make clean; make obj; make all install
It’ll also use more memory than a non-parallel build, but heck, that’s cheap these days.
Venkatesh Srinivas made a minor change to a ddb backtrace – it now prints the raw instruction pointers. On x86_64, a backtrace would not print the correct objects out, so this is better. It’s a minor change, but I’m pointing it out because it totally helped solve a problem for me on a package-building machine.