Flames bad, info good

On the freebsd-hackers mailing list, a slight flamewar erupted over discussion of checkpointing code from DragonFly. Amidst the dumbness that normally ensues in a flamewar, there’s some interesting descriptions on what work has been done/will be done on DragonFly. Check out the archive, mostly in the “FreeBSD mail list etiquette” thread. Matt Dillon’s posts here, here, and here are all info-packed.

ATAng discussion

Kip Macy brought up the idea of moving FreeBSD’s ataNG into DragonFly; the consensus so far is to bring it in separately from the existing ata support, since ataNG’s not yet completely stable.

Routing reading

Jeroen Ruigrok posted a whole pile of links to routing information for anyone wanting to work on it:


TCP Vegas: End to End Congestion Avoidance on a Global Internet

Evaluation of TCP Vegas: Emulation and Experiment

TCP and Successive Fast Retransmits

Congestion Avoidance and Control

Performance Problems in BSD4.4 TCP

Comparison of Tahoe, Reno, and SACK

TCP Vegas: New Techniques for Congestion Detection and Avoidance

A Tree-based Packet Routing Table for Berkeley Unix


TCP Vegas Revisited

Analysis on TCP Vegas and TCP Reno

Scalable Timers for Soft State Protocols

End-to-End Internet Packet Dynamics

End-to-End Routing Behavior in the Internet

Routing with a Clue

IP Lookups using Multiway and Multicolumn Search

Fast and Scalable Layer Four Switching

High-Speed Policy-based Packet Forwarding Using Efficient
Multi-dimensional Range Matching

Fast Address Lookups using Controlled Prefix Expansion

Slab, multicast, sysinstall, SysV

The memory slab allocator is now on by default, and the old system is gone.

Man pages for pim(4) and multicast(4) for “Protocol Independent Multicasting”, are in.

Sysinstall has been modified with changes for NFS; you can pick NFSv3 (default) and TCP protocol (not default), now, along with some internal changes.

The SysV IPC regression test suite has been added, in src/tools/regression/

Checkpointing is in

Kip Macy’s checkpointing code has been committed; I’m pasting Matt Dillon’s post about it as there’s a lot of issues to consider.

For those of you late to the party, checkpointing allows you to “freeze” a copy of an application so that, in theory, you can restore the program to that running state at a later point in time. Useful, for instance, if you have a program that takes a long time to complete and you don’t want to have to restart from the beginning if there’s an interruption.
Continue reading “Checkpointing is in”

Doxygen don’t

David Cuthbert brought up the idea of Doxygen headers for the source; Matt Dillon didn’t care for the idea, pointing at this for an example. Hiten Pandya noted that he’d like to have a separate by-hand handbook, for which Eirik Nygaard posted a possible example. Matthew Fuller added that he is working on a SGML application for library documentation as part of another project.


While noting that he has made a number of changes to the scheduler, Matt Dillon described a new tool called ‘wmake’. wmake allows you to run make in a subdirectory simulating a buildworld environment, without actually having to build world.

(quoted from his post, using libkvm for an example:)
cd /usr/lib/libkvm
wmake obj
make install