I'm experiencing a problem with the mainline Linux kernel and I want to find the commit which introduced the bug with git-bisect to notify the author that his change introduced a bug.
I spotted a good and a bad commit and started the bisection. Good commits are the ones those don't have the bug yet, bad commits are the ones where the bug is already introduced. The most recent pull of Linus' tree still has the bug, so I assume there is no fix for the bug yet, so this is why I think it's important to notify the author.
However, as I progressed with the bisection and proceeded to test all commits along the way (there were no skipped commits with „git bisect skip”, all of them were evaluated as being good or bad), at one point git surprised me with the following message:
The merge base 7089db84e356562f8ba737c29e472cc42d530dbc is bad.
This means the bug has been fixed between 7089db84e356562f8ba737c29e472cc42d530dbc and [02c3de1105228e367320e7fdeffbf511904f398c 6d04dfc8966019b8b0977b2cb942351f13d2b178 7aa7d608112baf63a0b1278955f9619427373807].
Git doesn't allow me to progress from this point. I don't understand this. I know that different branches are often merged (especially in Linus' tree), and the bug is likely introduced in a side branch, but even if that's the case, I think I should be able to identify the commit which introduced the bug, even if that's a merge commit. And how come that the bug has been fixed between the listed commits while I still have the problem when I build from the latest commit?