On Thu, October 25, 2007 12:43, Bartlomiej Zolnierkiewicz wrote:
>
>
> From the quick look:
>
>
> static int nv_init_one (struct pci_dev *pdev, const struct pci_device_id
> *ent) ...
> ppi[0] = &nv_port_info[type]; ...
> if (type == ADMA) { rc = nv_adma_host_init(host); if (rc) return rc; } else
> if (type ==
SWNCQ &&
> swncq_enabled) {
>
> --> this is the only place when swncq_enabled is read
>
>
> dev_printk(KERN_NOTICE, &pdev->dev, "Using SWNCQ mode\n");
> nv_swncq_host_init(host);
>
> --> nw_swncq_host_init() controls only _hardware_ side of SWNCQ enable
> }
>
>
> pci_set_master(pdev); return ata_host_activate(host, pdev->irq,
> ppi[0]->irq_handler,
> IRQF_SHARED, ppi[0]->sht);
>
>
> --> since ppi[0] _always_ points nv_port_info[SWNCQ], it could happen
> that if SWNCQ has already been enabled by BIOS/firmware swncq_enabled setting
> will be ignored
> ...
>
>
> If this is the case the obvious fix will be to s/SWNCQ/GENERIC/ in
> nv_pci_tbl[] and assign ppi[0] to nv_port_info[SWNCQ] in nv_init_one() only
> if (type == GENERIC
> && swncq_enabled).
>
>
> Thanks,
> Bart
>
>
Hi,
I think my netconsole log will confirm your analysis.
It's available here:
http://andotnet.nfshost.com/linux/2.6.24-rc1-swncq.txt
Notice that "Using SWNCQ mode" is not printed.
Andrew.
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html