Subject: Re: Linux kernel 3.x problems on PowerMac G5

From: Phileas Fogg <[email-masked]>
Date: Sun, 10 Mar 2013 01:26:35 +0100

On 03/07/2013 09:22 PM, Benjamin Herrenschmidt wrote:
> On Thu, 2013-03-07 at 21:08 +0100, Phileas Fogg wrote:
>> And the bisect couldn't find the commit which causes hangs on my
>> machine.
>> All commits which were provided by the bisect were bad.
>> And the commit before tha last bad bisect commit was bad too.
>> I did bisect several times, and got the same results.
>>
>> Fo testing i used linux-3.0.y branch of
>> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git.
>>
>> Did i miss something or do something wrong here ?
>
> Did git bisect go down a merge commit ? It does for me if I try that and
> asks to test that merge first. If you get that wrong it can get very
> confused.
>
> That's all I can think of... do you have the bisection log just in
> case ?
>
> Also you can use gitk -- arch/powerpc to look at the changes to powerpc
> code and try manually random points before/after that if you think
> bisect isn't doing the right thing.
>
> Cheers,
> Ben.
>
>
> _______________________________________________
> Linuxppc-dev mailing list
> [email-masked]
> https://lists.ozlabs.org/listinfo/linuxppc-dev
>

Hi,

i managed to find the bad commit after a couple of days bisecting.

----------------------------
44ae3ab3358e962039c36ad4ae461ae9fb29596c is the first bad commit
commit 44ae3ab3358e962039c36ad4ae461ae9fb29596c
Author: Matt Evans <[email-masked]>
Date:   Wed Apr 6 19:48:50 2011 +0000

     powerpc: Free up some CPU feature bits by moving out MMU-related 
features

     Some of the 64bit PPC CPU features are MMU-related, so this patch moves
     them to MMU_FTR_ bits.  All cpu_has_feature()-style tests are moved to
     mmu_has_feature(), and seven feature bits are freed as a result.

     Signed-off-by: Matt Evans <[email-masked]>
     Signed-off-by: Benjamin Herrenschmidt <[email-masked]>
--------------------------------

Actually, there are 2 problems i found.
The first problem occurs when i enable IDE CDROM driver on my machine.
The following commit causes hangs on my machine at boot:

----------------------
commit 5b03a1b140e13a28ff6be1526892a9dc538ddef6
Author: Tejun Heo <[email-masked]>
Date:   Wed Mar 9 19:54:27 2011 +0100

     ide: Convert to bdops->check_events()

     Convert ->media_changed() to the new ->check_events() method.  The
     conversion is mostly mechanical.  The only notable change is that
     cdrom now doesn't generate any event if @slot_nr isn't CDSL_CURRENT.
     It used to return -EINVAL which would be treated as media changed.  As
     media changer isn't supported anyway, this doesn't make any
     difference.

     This makes ide emit the standard disk events and allows kernel event
     polling.  Currently, only MEDIA_CHANGE event is implemented.  Adding
     support for EJECT_REQUEST shouldn't be difficult; however, given that
     ide driver is already deprecated, it probably is best to leave it
     alone.

     Signed-off-by: Tejun Heo <[email-masked]>
----------------------------

If i disable IDE CDROM driver then the Linux kernel boots again
and then it hits the commit 44ae3ab3358e962039c36ad4ae461ae9fb29596c
and hangs again :)

The commit eca590f402332ab873d13f2d8d00fa0b91cfff36 which is before
the commit 44ae3ab3358e962039c36ad4ae461ae9fb29596c works fine,
i tested it myself to be on the safe side.

Regards