From owner-freebsd-stable@FreeBSD.ORG Sun Nov 4 20:06:20 2007 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8912C16A420 for ; Sun, 4 Nov 2007 20:06:20 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.freebsd.org (Postfix) with ESMTP id 5B7FF13C4BB for ; Sun, 4 Nov 2007 20:06:20 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id DCAD546C27; Sun, 4 Nov 2007 15:06:24 -0500 (EST) Date: Sun, 4 Nov 2007 20:06:11 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: "[LoN]Kamikaze" In-Reply-To: <472AF94B.1020600@gmx.de> Message-ID: <20071104200325.T91647@fledge.watson.org> References: <20071102095628.GA796@0lsen.net> <472AF94B.1020600@gmx.de> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-stable@freebsd.org, Clint Olsen Subject: Re: Source upgrade from 5.5 to 6.X not safe? X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Nov 2007 20:06:20 -0000 On Fri, 2 Nov 2007, [LoN]Kamikaze wrote: >> Well, in this case after running 'make installkernel' and rebooting, the >> system did not come back up because it got kernel fatals on reboot (fatal >> trap 12: page fault while in kernel mode). It appears that my filesystems >> got marked dirty in the reboot loop that ensued, and I had to manually fsck >> them. I figured after that it might boot, but alas problems remained, so >> after grabbing a disc1 image of 6.2 on CDROM I moved kernel.old back and >> kernel to kernel.bad. >> >> Now, sometimes I work fast and loose with the rules of upgrading, but I was >> surprised that I managed to royally screw up things. Any pointers would be >> appreciated before I shave off a few years of my life again. > > I think you might have no choice but to omit the reboots, because the world > contains lots of stuff that has to do with the kernel (like mounting). > > So just go into single user mode and do the usual stuff: > # make installkernel > # mergemaster -p > # make installworld > # mergemaster > # shutdown -r now > > and pray to your deity of choice. > > If the reason for your problem is something else however you're stuck with a > system that can not run with your old kernel. So better backup before you > try. In general, new kernels can reliably run old user spaces, but not new user spaces on old kernels. This is because new user spaces often grow dependencies on new system calls, etc, that have appeared in the kernel, and a system call being missing can lead to rather extreme unhappiness if, say, it's in libc :-). When I upgrade a remote systems, I'll actually almost always run a few days with the new kernel and the old user space to make sure everything has settled nicely before doing the user space upgrade, which is harder to revert. Reverting to an old kernel is easy, and leaving the door open is likewise easy -- as long as you don't installworld. Robert N M Watson Computer Laboratory University of Cambridge