Subject: Re: powerpc/4xx: Regression failed on sil24 (and other) drivers

From: Benjamin Herrenschmidt <[email-masked]>
Date: Mon, 27 Jun 2011 20:19:56 +1000

On Sat, 2011-06-25 at 18:52 -0500, Ayman El-Khashab wrote:
> I noticed during a recent development with the 460SX that a
> simple device that once worked stopped.  I did a bisect to
> find the offending commit and it turns out to be this one:
> 
> 0e52247a2ed1f211f0c4f682dc999610a368903f is the first bad
> commit
> commit 0e52247a2ed1f211f0c4f682dc999610a368903f
> Author: Cam Macdonell <[email-masked]>
> Date:   Tue Sep 7 17:25:20 2010 -0700
> 
>     PCI: fix pci_resource_alignment prototype
> 
> I found it working with 2.6.36 but it seems that it is in
> the current trunk as well.
> 
> I patched my code to take out this commit and (quickly)
> verified it was ok.  I am guessing the patch is ok since it
> converts int types to resource_size_t.  My guess is that the
> problem is in the sil24 driver but I did not see anything 
> obvious in that code.  Any tips on what could be wrong?  Is
> the problem potentially somewhere being called by that code?
> 
> The device driver fails with "error -22" on a 460SX (which 
> has the 36 bit pci space).
> 
> sil24 /drivers/ata/sata_sil24.c

Can you send a dmesg & output of /proc/iomem & ioport with and without
the patch (same kernel otherwise) ?

Also can you try to figure out (printk's) where in the driver does it
fail ? (Which function fails)

It's possible that this changes something in the core resource
assignment code causing something else to fail elsewhere or exposing
another bug elsewhere with the consequence of leaving the SiL with badly
assigned resources.

Cheers,
Ben.