From owner-freebsd-stable@FreeBSD.ORG Fri Jun 6 23:03:37 2008 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 DF9101065673; Fri, 6 Jun 2008 23:03:37 +0000 (UTC) (envelope-from 000.fbsd@quip.cz) Received: from elsa.codelab.cz (elsa.codelab.cz [91.103.162.4]) by mx1.freebsd.org (Postfix) with ESMTP id 81DCD8FC18; Fri, 6 Jun 2008 23:03:37 +0000 (UTC) (envelope-from 000.fbsd@quip.cz) Received: from localhost (localhost.codelab.cz [127.0.0.1]) by elsa.codelab.cz (Postfix) with ESMTP id 7D5E419E023; Sat, 7 Jun 2008 01:03:36 +0200 (CEST) Received: from [192.168.1.2] (r5bb235.net.upc.cz [86.49.61.235]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by elsa.codelab.cz (Postfix) with ESMTPSA id 3BE5019E019; Sat, 7 Jun 2008 01:03:34 +0200 (CEST) Message-ID: <4849C258.6090003@quip.cz> Date: Sat, 07 Jun 2008 01:03:52 +0200 From: Miroslav Lachman <000.fbsd@quip.cz> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.12) Gecko/20050915 X-Accept-Language: cz, cs, en, en-us MIME-Version: 1.0 To: Colin Percival References: <473B5D10.1070109@janh.de> <473BD54F.9050808@freebsd.org> <473C1FD1.70001@janh.de> <473DA6B5.10107@freebsd.org> <473EF438.5090004@janh.de> <473F0939.9050800@freebsd.org> In-Reply-To: <473F0939.9050800@freebsd.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Cc: stable-list freebsd Subject: Re: freebsd-update 6.2-R -> 6.3-B1 rollback failed 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: Fri, 06 Jun 2008 23:03:38 -0000 Colin Percival wrote: > Jan Henrik Sylvester wrote: > >>>In short, as long as you don't build a custom kernel but call it >>>"GENERIC" or >>>"SMP", FreeBSD Update should automatically DTRT. >> >>That is exactly my question. On 6.2-RELEASE, I sometimes used a modified >>ld-elf.so.1 or a single patched module without recompiling the kernel. >>What does using freebsd-update (accidentally or deliberately) do in that >>case? By accident, I discovered that it does not always fail. Does it >>skip the modified files, overwrite them with new versions, or overwrite >>them with an unpredictable bdiff merge that is likely garbage? > > > Depending on the UpdateIfUnmodified option in freebsd-update.conf, it will > either update files to "clean" new versions or print a warning message and > not touch them. > > There's also an IgnorePaths directive which you can use to tell FreeBSD > Update not to touch some files (even if they haven't been modified locally). > > FreeBSD Update will never produce mangled files as a result of applying a > bsdiff patch to the wrong file -- it checks file hashes before and after > applying patches and gracefully falls back to downloading complete files > if it can't generate a file via patching. Is it possible to configure freebsd-update to not remove old kernel directory and just rename it to kernel.old or something else? Two times I end up with unbootable machine (upgraded from 6.3 to 7.0 - 7.x version kernel always hangs on this machine, even with CD boot) and then I must use bootable CD / flashdisk with old 6.x kernel to be able to run freebsd-update rollback. It will be useful if one can choose to leave old kernel in boot directory to be able to boot it if something goes wrong. Miroslav Lachman