Subject: Re: Can't find the revelant commit with git-log

From: René Scharfe <[email-masked]>
Date: Wed, 26 Jan 2011 19:39:32 +0100

Am 26.01.2011 10:01, schrieb Francis Moreau:
> René Scharfe <[email-masked]> writes:
> 
> [...]
> 
>> Hmm, seems like the function is gone since d847059.  Does all of this help
>> you in any way?
> 
> Sigh... one more try, one more failure...
> 
> This time I tried to use git-bisect(1) to see if I couldn't track the
> change more easily.
> 
> So, here's what I did:
> 
>     $ cat ./bisect.sh
>     #! /bin/sh
>     
>     if ! git grep -q -e blacklist_iommu -- drivers/pci/intel-iommu.c
>     then
>     	exit 1
>     fi
> 
>     $ git bisect start v2.6.28 v2.6.27 -- drivers/pci
>     Bisecting: 70 revisions left to test after this (roughly 6 steps)
>     [a0bfb673dca8a2b4324fe11e678ec6d6a9ad67e0] Merge branch 'linux-next' of
>     git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6
> 
>     $ git bisect run ./bisect.sh 
>     running /dev/shm/bisect.sh
>     Bisecting: 42 revisions left to test after this (roughly 5 steps)
>     [0235c4fc7fc6f621dc0dd89eba102ad5aa373390] PCI PM: Introduce function
>     pci_wake_from_d3
>     running /dev/shm/bisect.sh
>     error: The following untracked working tree files would be overwritten
>     by checkout:
>        arch/x86/es7000/Makefile
>        arch/x86/es7000/es7000.h
>        arch/x86/es7000/es7000plat.c
>        drivers/pci/dma_remapping.h
>     Please move or remove them before you can switch branches.

These are untracked files; your tree is not clean.  Either commit them,
stash them away or delete the files.  Or make a local clone just for
bisecting purposes.

>     Bisecting: 18 revisions left to test after this (roughly 4 steps)
>     Aborting
>     bisect run failed:
>     'bisect_state bad' exited with error code 1
> 
> Do you know what's going wrong ?

I tried the same and the result was:

	e61d98d8dad0048619bb138b0ff996422ffae53b is the first bad commit

But this probably won't help you much, either, as it is a regular commit
which doesn't touch the function (it doesn't exist before and after it).

I can only guess that bisect gets confused by the merges just like log
(and me).

René