* Re: Libata VIA woes continue. Worked around - *wrong*
[not found] ` <41319C1F.6030207@pobox.com>
@ 2004-08-29 9:26 ` Brad Campbell
0 siblings, 0 replies; 2+ messages in thread
From: Brad Campbell @ 2004-08-29 9:26 UTC (permalink / raw)
To: linux-kernel
Jeff Garzik wrote:
> * look at the changes from 2.6.5 -> 2.6.6 and see which change breaks
> things. You can get a list of each change like this:
>
> bk changes -rv2.6.5..v2.6.6
>
> then you can revert each patch in order, or bsearch. Here's an example
> of reverting each libata patch in order:
>
> bk clone http://linux.bkbits.net/linux-2.5 vanilla-2.6
> bk clone -ql -rv2.6.6 vanilla-2.6 brad-test-2.6.6
> cd brad-test-2.6.6
> bk -r co -Sq
> bk changes -rv2.6.5.. > /tmp/changes-list.txt
> less /tmp/changes-list.txt # scan for a libata-related change
> bk cset -x1.1587.39.2 # applies reverse of cset 1.1587.39.2
> make # create test
> # ... test fails
> bk cset -x1.1587.39.1 # applies reverse of cset 1.1587.39.1
> # _on top of_ previous reverted patch
> -
Ooooohh. I have been looking for a "Dummies guide to regression testing with BK" and not been able
to find one. I have cc'd this to linux-kernel purely for the purpose of more googleable archives for
future reference for BK newbies like me.
Cheers Jeff!
I'll start hammering on this tonight.
(It's actually between 2.6.6 and 2.6.7-rc1 that the breakage occurs, I had just been running 2.6.5
until I recently got a dodgy hard disk which showed up flaws in the libata error handling, thus I
tried to move to 2.6.8.1 to debug that and found it broke some of my drives in other ways. I have
already cloned the relevant trees, I just could not figure out how to break it down to cset granularity)
Regards,
Brad
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Libata VIA woes continue. Worked around - *wrong*
@ 2004-08-30 14:48 Larry McVoy
0 siblings, 0 replies; 2+ messages in thread
From: Larry McVoy @ 2004-08-30 14:48 UTC (permalink / raw)
To: linux-kernel
Resending, there was a typo in the kernel address.
Date: Mon, 30 Aug 2004 07:45:52 -0700
From: Larry McVoy <lm@work.bitmover.com>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: Brad Campbell <brad@wasp.net.au>, linux-ide@vger.kernel.org,
linxu-kernel@vger.kernel.org, Larry McVoy <lm@bitmover.com>,
Linus Torvalds <torvalds@osdl.org>
Subject: Re: Libata VIA woes continue. Worked around - *wrong*
> Since BK changesets are ordered as a progression, you can also do a
> bsearch by clone trees to specific changesets, such as
>
> bk changes -rv2.6.6..2.6.7 > /tmp/changes.txt
> # view changes.txt, pick out cset 1.1587.39.1 as your "top of tree"
> bk clone -r1.1587.39.1 vanilla-2.6 brad-test-2.6.6-bk
> # compile and test the kernel in brad-test-2.6.6-bk
A couple of comments:
- BK changesets are not a linear progression, they are in the form of
a graph called a lattice. Getting a path through there that you can
do binary search on is not straightforward.
- The CVS tree represents one such straight path, get just the ChangeSet
file from the CVS tree and do an rlog on it - you are looking for the
lines like:
BKrev: 41316382Cxbyp1_yHDX8LmymGot3Ww
That rev is the "md5key" of the BK rev and can be used anywhere a BK
rev may be used (bk clone -r41316382Cxbyp1_yHDX8LmymGot3Ww ...)
- The biggest time saver is knowing where to look for your bug. If you
knew that the bug was in drivers/scsi/libata-core.c then you could
find each changeset which touched that file like so
$ bk rset -lv2.6.6 | grep drivers/scsi/libata-core.c
drivers/scsi/libata-core.c|1.39
$ bk prs -hnd:I: -r1.39.. drivers/scsi/libata-core.c | while read rev
do bk r2c -r$rev drivers/scsi/libata-core.c
done
That will crunch away and spit out (in this case) 63 revs like
1.1803.1.40
1.1803.1.39
1.1803.1.38
...
and a binary search over those revs is likely to be fair more fruitful
because the history of that one file is pretty linear.
--
---
Larry McVoy lm at bitmover.com http://www.bitkeeper.com
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-08-30 14:53 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-08-30 14:48 Libata VIA woes continue. Worked around - *wrong* Larry McVoy
[not found] <412F3DEA.2070307@wasp.net.au>
[not found] ` <41318680.8080102@wasp.net.au>
[not found] ` <41318C87.9010806@pobox.com>
[not found] ` <4131910B.6020000@wasp.net.au>
[not found] ` <41319C1F.6030207@pobox.com>
2004-08-29 9:26 ` Brad Campbell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox