While asking some questions, Alex Hornung let drop some of the details of his Summer of Code devfs project. Sounds like he’s making good progress.
Month: May 2009
Huawei device improvments
Huawei modems, often available as USB attachments, have been problematic on DragonFly. However, it looks like it’s fixed. (I dont have one to test.) There’s a lot of names involved, so I’ll just point to the commit message.
Open Source in main stream media
This arrived in my mailbox in dead tree form today, but it’s also online: My favorite magazine has some good thoughts on open source vs. cloud computing, plus one on open source variety, or lack of it. It’s interesting that mainstream articles talking about open source software have moved beyond the forms ‘gee whiz there’s Linux’ and ‘here’s what a software license is’.
Subversion update
Subversion isn’t being used for DragonFly, but it is available via pkgsrc. If you’re one of the people using it, the pkgsrc version has been updated to 1.6.2 which may have some upgrading issues.
Git and Mercurial, together
When DragonFly was moving away from CVS, the votes were split pretty evenly between Git and Mercurial. DragonFly went to Git, but it’s apparently now possible to use Mercurial with a Git repository.
Looking at licensing
Statis Kamperis is working on POSIX conformance for DragonFly as his Summer of Code project; he’s posted some questions about the agreement he is given for the Open Group’s test suites. If you’re curious, he links to a copy of the agreement. (I have an I-am-not-a-lawyer-but-have-worked-on-a-number-of-contracts followup)
New test machines and AHCI work
Matthew Dillon has put together some new test machines, in preparation for porting the OpenBSD AHCI driver to DragonFly. Check his message if you are thinking about building a new system, as they appear to work well.
pkgsrc-2009Q1 is out
Well, I’m not sure if it’s out, or the new thing is the release announcement and 2009Q1 has been out for a while. Usually, the quarterly releases of pkgsrc are available 2 weeks after freeze, which was back in March. Either way, it’s available.
2 separate bugs: threading, Xorg
Hasso Tepper has a “BIG FAT WARNING” about two new issues: threaded programs are broken on bleeding-edge DragonFly because of a possible GCC bug that was only recently exposed, and Xorg in pkgsrc has issues with the Intel driver.
Simon ‘corecode’ Schubert already has one change in that may fix the issue with threaded programs, and is working on the Intel driver issue.
Update: more threading changes.
Hammer presentation at BSDDay
Sdävtaker is giving a “Hammer administration” presentation at BSDDay, May 29th and 30th in Argentina. (His presentation is the second day.)
Followup on ‘BTX Halted’
Jordan Gordeev posted installation instructions for his ‘BTX Halted’ fix. It may not be the final answer, though.
GSOC: AMD64
Another Summer of Code summary: Jordan Gordeev is returning to AMD64 work. He appears to be ahead of schedule, too.
A lengthy Git explanation
Here’s an in-depth but quite readable explanation of not just the surface features of Git, but the underlying ideas of how it works, via a narrative. (via)
GSOC: multi-threaded application debugging
Dan Chis has posted a summary of his Summer of Code project: debugging multi-threaded applications. He also has some details of his current thesis in there… He’s busy.
xorg updates for testing
Hasso Tepper has some xorg updates to fix problems he’s seen with the intel video driver. The versions of these packages in pkgsrc are old enough that the changes can’t be committed ‘upstream’ to xorg, so he’s attacking the problem from the opposite direction and upgrading the software.
He reported significant EXA performance improvements, so it’s definitely worthwhile. It’s tested on DragonFly but will probably benefit other pkgsrc-using platforms too.
Explaining BSD
Dru Lavigne has posted links to SummerCamp presentations explaining “What is BSD?”. Whip this out for your mildly confused Linux-using friends.
Updated ioapic, BTX error fix
Sepherosa Ziehau’s recent commit changing how ioapic works may help anyone who has previously had trouble compiling a multiprocessor kernel with IO_APIC enabled. Try it, if that applies to you.
Also, Jordan Gordeev has a potential fix for anyone who has had a failed boot with a ‘BTX Halted’ message; you will have to retrieve it from his Git repo.
The small things that matter
Sascha Wildner made two relatively minor commits that solved two long-standing (for me) irritations: a version mismatch in uname for identical versions of DragonFly, and automatic running of newaliases. Both issues have bit me several times in minor but irritating ways over the course of years, and it’s a relief to have them gone. Thanks, Sascha!
More GSOC: MP profiling, C99/POSIX conformance
More Summer of Code summaries: Robert Luciani has posted what he plans for his MP contention profiling work, and Stathis Kamperis has a description of his C99/POSIX conformance audit testing, with links.
ath(4) updated to open source version
Hasso Tepper has added the open source HAL code for ath(4) (old man page), as suggested by Alexander Polakov. I’m not sure if this is related to Dmitry Komissaroff’s work.
vkernels made easy
Matthew Dillon has added a Makefile in /usr/src/test/vkernel that automates vkernel setup. You can create a virtual system in one step. ‘make help’ in that directory to see all the options.
More BSD cross-pollination: bwi(4)
Sepherosa Ziehau’s bwi(4) driver for DragonFly is going into FreeBSD 8, as mentioned in this Warner Losh blog post.
What to do with a crash
I’ve linked to explanations like this before, but it’s worth repeating: when Tim Darby had a crash, Matthew Dillon explained how to obtain a dump. This can be fantastically useful when debugging a crash.
A widespread mistake
Hasso Tepper pointed out an interesting problem: problems with unistd.h not being available on DragonFly keep a number of C++ programs from compiling. The fact that this doesn’t happen on other platforms appears to be completely accidental.
DevFS details
Alex Hornung posted a nice summary of his DevFS project for DragonFly Google’s Summer of Code – Matthew Dillon has a followup, too.
Are you a Summer of Code student for DragonFly? Don’t forget to post a summary of your project to kernel@ before the start. Yes, I know there’s exams.
Hammer porting notes
Daniel Lorch, the student working on a port of Hammer to Linux, has a blog, with some notes on progress. I found this April item entertaining.
“Thousands of times more secure than bcrypt”
Mr_Bond on #dragonflybsd passed along a link to Colin Percival’s post about scrypt, a “provably as strong as possible” encryption function that is designed to withstand brute force attacks. This was presented at BSDCan 2009, but his post has more details and links.
pkgin in pkg-wip…
… And Antonio Huete Jimenez has described the few steps required to install it.
lseek(2) extensions for Hammer?
Pedro F. Giffuni suggested that the SEEK_HOLE and SEEK_DATA lseek extensions would be good additions to Hammer, and linked to a Sun paper that went into more detail.
Extra rebuild needed
If you’re running bleeding-edge DragonFly, you’ll need to rebuild world and kernel after this recent change to interrupt counting from Sepherosa Ziehau.
Programming language history
For your weekend reading: A Brief, Incomplete, and Mostly Wrong History of Programming Languages. It’s far more clever than the source material suggests. (via)
Name change for pkg_dry
pkg_dry, the binary package management tool I keep nattering on about, has had its name changed to ‘pkgin‘. I have no idea how to pronounce it.
If you’ve already tried pkg_dry, this will require rebuilding the databases because of the name change.
BSDTalk 173: FreeBSD core team
The newest BSDTalk has a conversation from BSDCan 2009 with 5 different FreeBSD core team members, for 38 minutes.
Tricks for SSH and for git
I always forget how to do this, so I’m linking to an article about it: Tunneling and Proxies over SSH. There’s a cutesy title and intro, which can be safely ignored. (via)
Also, some tips for taking full advantage of Git. (via)
More pkg_dry
Antonio Huete Jimenez has updated his pkg_dry installation script. You won’t need it much longer; it should show up in pkgsrc soon.
2.3.1 tagged
Simon ‘corecode’ Schubert tagged 2.3.1, which is still in the development branch, so don’t update unless you were already at 2.3. There’s a nice list of commits that went into this tag.
Roguelike roguelike hacklike
Two recent roguelike items:
Gamasutra has a 4-page article about Rogue, emphasizing its origins being intertwined with the original BSD UNIX. Read the comments for some BSD history, from that actual people involved. (via)
The latest @Play column about roguelikes is very long, and that will not be a surprise after you read the title: How To Win At Nethack. I find articles like this fascinating, but then again, I also enjoyed reading through the AD&D Dungeon Master Guide for the charts.
Cloning tap devices for Qemu
Naoya Sugioka has a Qemu patch to make a cloned tap(4) device work; feedback is desired, and Sepherosa Ziehau has already supplied some.
A lot of BSD
“FreeBSD – the unknown Giant” has beaten me to the post I was intending to make, noting that there’s 4 different BSD releases this week, all of varying sizes, and showing a lot of vigor in the BSD community.
Accessing vkernel memory
Aggelos Economopoulos added an interesting feature for virtual kernels: the memory of a given virtual kernel is now accessible directly at /proc/$pid/mem .
2.2.2 very soon
Yonetani Tomokazu discovered a permissions problem under Hammer, so Matthew Dillon made a number of commits to fix this and other issues. An update for 2.2 will get them for you, and DragonFly 2.2.2 will be put together very soon so that there’s a release image with these fixed.
BSD Book: virtual labs
Hubert Feyrer, for his PhD, put together a Virtual Unix Lab – a whole lab of NetBSD systems for teaching System Administration. It’s a good strategy for an environment where some percentage of the systems will be irretrievably mangled. It’s available as a book.
pkg_dry usage and updates
Antonio Huete Jimenez wrote up his experiences using pkg_dry on DragonFly, which were mostly successful.
He followed up with a script that takes care of the initial setup for pkg_dry, and noted that following pkg_dry in CVS is the best idea at this point, as it’s going through rapid development.
It should be possible to point pkg_dry at pkgbox.dragonflybsd.org or one of the mirrors, and perform binary-only remote installs and upgrades of pkgsrc packages.
New OSBR and a tip on kqemu
Dru Lavigne has linked to the latest issue of the Open Source Business Resource, with a focus on open source in government. The next issue will be “women in open source” (appropriate given recent hullabaloo) – they’re looking for submissions.
Also, Dru made a good point in a separate post, that is connected with the recent kqemu work for DragonFly: if every BSD had a working kqemu kernel module, it would make life easier for people taking the BSDA exam.
HPET support added
Sepherosa Ziehau has added the ability to use High Precision Event Timers (HPET) in DragonFly, based on FreeBSD code. It’s experimental, and he has instructions on how to find if your hardware supports it. It’s apparently a much faster timer than what is used with ACPI, though I do not have details on how that translates into real-world performance.
Packaged kqemu
Johannes Hofmann has an initial version of the kqemu kernel module installable as a pkgsrc package, so that it can be managed the same as with other third-party software. I don’t know if this will actually make it into pkgsrc, but it would be nice if it did.