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
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to