IPC finalized and soon complete

Matt Dillon will be finishing up IPC using the model mocked up in libcaps. This will enable functions like getpwuid() as an IPC serviceand out of libc. If I recall correctly, IPC = Inter-Process Communication, as acronyms are a common question lately.

lnc and vx in

Code to add the lnc and vx network drivers from FreeBSD-5 is in, put together by Joerg Sonnenberger. This is part of the PCI compat cleanup, though these just-added drivers just use newbus.

Libcaps update

Libcaps, the library for userland threading, has been updated. Work is still proceeding on fp stave/restore, and some other tasks, including Galen Sampson’s work. Matt Dillon’s commit message sums it up as neatly as possible, so I’ll just paste it:

Major update to libcaps. Implement support for virtual cpus using
rfork_thread() and implement IPIs, per-virtual-cpu globaldata areas,
and per-virtual-cpu LWKT scheduling.

libcaps halfway

Galen Sampson and Matt Dillon have committed the first stage of the userland threading – globaldata structure and thread primitives are connected, and libcaps can lock in a fashion similar to the existing kernel locks.

Temporary port fix

Peter Kadau noted that if you are building a program such as XFree86 and it complains about not being able to find a particular library that you know exists on your system, you can use cpdup to move it (between, for instance, /usr/local/lib and /usr/X11R6/lib).

This is a temporary fix. However, if you are experiencing this right now, it’s probably because of an out-of-date dfports. Delete all packages, update, and reinstall packages, and you should be OK.

nrelease directory

/usr/src/nrelease has the ability to build the new ‘live’ CD iso images. Listed here is what Matt Dillon listed as possible make targets in that directory:

“release: This will do a full buildworld and buildkernel (GENERIC)
with the current source tree, then generate the release
ISO and directory structure in /usr/release.

quickrel: This will do a ‘quick’ buildworld and buildkernel (i.e.
-DNOCLEAN) and then generate the release ISO and directory
structure in /usr/release.

realquickrel: This is even faster. It assumes that the buildkernel and
buildworld have already been done and just generates the ISO
directory structure and ISO file in /usr/release.”

‘live CD’ available

Matt Dillon has created ‘live CD’ features, so you can boot from a DragonFly CD and get to a useable prompt. To support this, cpdup is now included in /bin, and mount_mfs now has the -C option, which will automatically copy a read-only filesystem into a MFS mount. An experimental ISO is available on the download page.

Be warned that you will have to lay out filesystems on your own with fdisk, disklabel, etc., and this is largely undocumented, except in the README.
Continue reading “‘live CD’ available”


So, it looks like this:

From an offhand comment Matt Dillon made, the first ‘release’ of Dragonfly is planned at least several months from now. (No definite date yet.) FreeBSD-5 should be entering a stable branch (5.3) around the same time, and the stable 2.6 Linux kernel should be appearing around mid-December, close to the same time as FreeBSD 5.2. KDE 3.2 should also be out in February. Gnome 2.6 is due in March.

So, early 2004 looks like it will have much to play with.

Misc. Code

Normally I wait until the commit happens before I note new code, but the next few days will be hectic. Max Laier submitted patches to add PF, Erik Paulsen Skaalerud is working on ALTQ, and Craig Dooley added support for the Intel mobile ICH4 ATA chipset.