Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Jul 2001 10:32:32 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        obrien@FreeBSD.ORG, Bill Moran <wmoran@iowna.com>, freebsd-hackers@FreeBSD.ORG
Subject:   Re: FreeBSD Mall now BSDCentral
Message-ID:  <3B4DDF30.9CEAAAFB@mindspring.com>
References:  <20010706144935.A61843@xor.obsecurity.org> <3B4650D0.97F10B83@bellatlantic.net> <20010707002340.B16071@widomaker.com> <20010707004731V.jkh@osd.bsdi.com> <3B49F8D5.2C9BFA73@mindspring.com> <3B4A0124.26025FB5@iowna.com> <3B4A1423.E8E365E@mindspring.com> <20010709144801.A38630@dragon.nuxi.com> <3B4B26FE.6660FE5C@mindspring.com> <20010710091352.F48544@dragon.nuxi.com> <3B4B3A58.A6CFC592@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Terry Lambert wrote:
> 
> David O'Brien wrote:
> > There you go Terry, async mounts for installs.
> 
> Thanks.
> 
> This does not appear to work on upgrades for things
> like /usr/ports.
> 
> Now I will have to go find out why; how annoying: yet
> more work.

OK, I was right.

The damn thing is not mounting async.

There are a couple of reasons for this, when doing an
upgrade:

1)	Soft Updates enabled on a root partition.

	This comes back to the old "you can't turn SU
	on or off, except via tunefs".  So even if you
	boot via CDROM, it's too late, if the CDROM
	kernel supports SU, since it's already on, and
	you can't substitute an async mount.  Soft
	Updates are OK for a moderate amount of file
	replacement activity, but wholesale work is
	better done with async mounts.  So what's
	needed is a way for async to take precedence
	(by flushing all pending updates, and updating
	the mount type).

	So the new default of "SU on" actually will
	interfere with upgrades (we do this from release
	snapshots I have built all the time, and we do
	it to recover lab and engineering machines to
	a known good state, before applying the most
	recent local changes).

2)	Most of my upgrades are over a network, not
	booting off of CDROM.  This means that it's not
	running as "init", so David's if() test he quoted
	me failed to attempt to activate async mounts;
	we don't have the option on a machine with a
	serial console and no floppy or CDROM to be able
	to select network booting, even though on some
	of the machines, there are Intel Netboot capable
	FXP cards.

3)	The default in 4.3-RELEASE is to have the IDE
	write caching off.  This is probably the biggest
	barrier to fast install/upgrade.  It's not really
	possible to get around this on initial install,
	but on many of the machines, where we are doing
	the upgrade over an NFS mount with a copy of the
	sysinstall from the floppy image from the CDROM,
	(why isn't this duplicated on the CDROM anywhwere?)
	it's possible to turn on the write caching at boot
	time, and do an upgrade (NOT an install!) with the
	write caching enabled.  The async mount still does
	not take place, because of the soft updates.

	NB: Yes, I'm aware this has been changed in the
	source tree, but it is not available on and CDROM
	distributions currently available.

4)	I'm pretty sure that during a regular install, the
	default of newfs'ing with soft updates enabled is
	now _also_ preventing the use of true async mounts;
	again, for the most part, with only new file data,
	this is pretty fast, but you are once again up the
	creek without a paddle when it comes to installing
	the ports collection.

So that's the status: for new installs, the complaint holds
true for all upgrade cases, and the default install case
for things with bad locality of reference (like ports).

Hope this clarifies things.

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3B4DDF30.9CEAAAFB>