Date: Sat, 15 Nov 2014 10:56:50 -0800 From: Alfred Perlstein <bright@mu.org> To: freebsd-current@freebsd.org, Steve Kargl <sgk@troutmask.apl.washington.edu> Subject: Re: Finding a rogue src/sys commit with bisection? Message-ID: <5467A1F2.8000703@mu.org> 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 11/15/14, 10:43 AM, 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. > Use git, it has a built in bisector to shake this sort of thing out: git clone --config remote.origin.fetch='+refs/notes/*:refs/notes/*' https://github.com/freebsd/freebsd.git cd freebsd git log # find the hash of the commit for r271273 HASH=the git hash you found # then: git bisect start git bisect bad # Current version is bad git bisect good $HASH Now test compile / etc... Then as things work or don't work you keep running: git bisect good -or- git bisect bad Then compile and test.. you should converge on the problem. -Alfred
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5467A1F2.8000703>