More partition thoughts

Joerg Sonnenberger added to the partion discussion:

The alternative for /tmp is to have lots of swap and MFS for /tmp. This is often faster and avoids the lots of old crap in /tmp problem.
In that case you should make /var/tmp its own partition. In general /tmp and /var/tmp as world writable locations should be on partitions
on there own. Making /usr/obj a filesystem of its own has the advantage
of faster cleaning — just unmount, newfs and remount it :)

He also noted that having specific partitions for things like news spools (/news/) and mail stores (/var/spool/) is that it allows the blocksize to be set much smaller, which decreases wasted space when dealing with lots and lots of small files.

Partition sizing

Matt Dillon responded to a question from David Cuthbert about partition letters; as part of that, he recommended this sort of partion layout:

If you have a large system, it is often a good idea to separate out oft-written directories such as /usr/obj, and to make /tmp larger. /var/tmp is usually made a softlink to /tmp. If you have or intend to process a lot of mail, making /var larger is a good idea. If you are running a mail server it is often a good idea to make /var/spool its own partition (and /var/mail its own partition if you are running a large mail pop service or have a lot of users). If you are running a large web server making /usr/local/www its own partition (the base of Apache’s site directory) is a good idea.

Buildworld done; quickworld possible

Matt Dillon’s changes to buildworld are done; the next make buildworld you do will take a bit longer, but you should be able to do make quickworld thereafter, which should be… quicker!

Be careful, for the time being, doing a make -j, though. If that fails, Matt asks:

In one xterm: make -j 4 buildworld >& /tmp/bw.out
In another xterm: tail -f /tmp/bw.out | fgrep ===

Save the results, and post a link to it in the kernel discussion group.

Getting emacs working

For those readers who follow the emacs religion: Andreas Fuchs found that the emacs build expects /usr/lib/crtbegin.o, which does not exist on DragonFly. Rahul Siddharthan removed the mention of crtbegin.o from the makefile for emacs, and that seems to fix it.

Updated: Hiten Pandya added a port override for emacs, made by Aaron Malone. That solves it.

Less jerky, more nice

Among other source changes today, Matt Dillon made a change to the way priority is set for new processes, which should fix what he calls the ‘jerky X pointer’ problem. He also fixed the systimer in such a way that nice now actually works. The result is that your DragonFly system should now be even more responsive under heavy load.

NFS Perfomance on Gigabit

Matt Dillon posted some numbers on performance of NFS over Gigabit Ethernet – using TCP, he was able to hit 80-something megabytes per second right off the bat, and saw nearly 90 using UDP. This improvement stems from Hiten Pandya’s work on the em driver and NFS block size changes.

Interface renaming complete

Hiten Pandya has finished the if_xname work; you can now do:

# ifconfig fxp0 name 'LAN'
# ifconfig fxp1 name 'WAN'

And then refer to these network interfaces by the ‘LAN’ and ‘WAN’ names. These are aliases, not changed names, so the original names – fxp0 and fxp1 in this example – will still exist.

I4B broke

Are you using I4B/sppp? Don’t upgrade, as it’s the one interface that doesn’t support Berkley Packet Filters (BPF) and is temporarily broken while Joerg Sonnenberger works on the networking API. Contact Joerg if you are so lucky as to be affected by this.