Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Nov 2014 11:52:24 -0700
From:      Ian Lepore <ian@FreeBSD.org>
To:        Steve Kargl <sgk@troutmask.apl.washington.edu>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Finding a rogue src/sys commit with bisection?
Message-ID:  <1416077544.4781.148.camel@revolution.hippie.lan>
In-Reply-To: <20141115184332.GA30344@troutmask.apl.washington.edu>
References:  <20141115184332.GA30344@troutmask.apl.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 2014-11-15 at 10:43 -0800, Steve Kargl wrote:
> Before I totally hose by /usr/src directory, does anyone
> have some guidelines on doing a binary search for a rogue
> commit in /usr/src/sys?.  Either cam or usb (or acpi?) has
> broken the ability to remove a external USB device once it
> is plugged into a usb port on my Dell Latitude D530 laptop.
> I know that a good kernel can be built with r271273 and
> a bad kernel comes from (nearly) top of tree at r274456.
> 
> I assume I need to do somthing along the lines
> 
> % cd /usr/src/sys
> % svn merge -r 274456:272864    (half way point between good and bad)
> (build kernel and test)
> % cd /usr/src/sys
> % svn revert -R .
> (assume 272864 builds working kernel)
> % svn merge -r 274456:273660   (1/2 point between 272864 and 274456).
> 
> Rinse and repeat.
> 

I've always used 'svn up -rnnnnnn' to bisect.  No need to revert, just
repeatedly update to the next halfway point, and when you're all done,
-rHEAD to get back to normal.  I've also had very good results with
using -DNO_CLEAN on kernel bisects, it lets you zoom in quickly then
when you think you have a candidate you can do a more complete
clean-and-rebuild to be sure.  Sometimes build glitches will require a
clean rebuild at some bisect points.

-- Ian





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1416077544.4781.148.camel>