[KERNEL 2.6.26-rc4] bugreport : pata_pcmcia with Sandisk Extreme III 8GB
Komuro
komurojun-mbn at nifty.com
Mon Jul 7 08:42:53 EDT 2008
Hi,
> How come ap->lock can get set to bogus address? Can you please printk
> &host->lock and ap->lock after ata_host_alloc() without the patch?
Here is the output of printk.
Strangely, without the patch, the pata_pcmcia problem happens again.
ata_piix 0000:00:1f.1: version 2.12
ACPI: PCI Interrupt Link [LNKC] enabled at IRQ 11
ACPI: PCI Interrupt 0000:00:1f.1[A] -> Link [LNKC] -> GSI 11 (level, low) -> IRQ 11
&host->lock = d6c288b4
ap->lock = d6c288b4
ap->lock = d6c288b4
PCI: Setting latency timer of device 0000:00:1f.1 to 64
scsi0 : ata_piix
scsi1 : ata_piix
....
pcmcia: registering new device pcmcia1.0
&host->lock = d70ee534
ap->lock = d70ee534
scsi2 : pata_pcmcia
host = devres_alloc(ata_host_release, sz, GFP_KERNEL);
if (!host)
goto err_out;
devres_add(dev, host);
dev_set_drvdata(dev, host);
spin_lock_init(&host->lock);
printk("&host->lock = %x\n", &host->lock);
host->dev = dev;
host->n_ports = max_ports;
/* allocate ports bound to this host */
for (i = 0; i < max_ports; i++) {
struct ata_port *ap;
ap = ata_port_alloc(host);
if (!ap)
goto err_out;
ap->port_no = i;
/*
ap->lock = &ap->__lock;
spin_lock_init(ap->lock);
*/
printk("ap->lock = %x\n", ap->lock);
host->ports[i] = ap;
}
Best Regards
Komuro
More information about the linux-pcmcia
mailing list