Skip to contentSkip to conversation

ahci: restore pci_intx() handling

PATCH Applied Tejun Heo 3 participants 4 messages Sep 16, 2009 – Sep 17, 2009 libata

lore
Share & tools
lore

Tejun Heo

author
#0 lore raw

PATCH 1/1 ahci: restore pci_intx() handling

Commit a5bfc4714b3f01365aef89a92673f2ceb1ccf246 dropped explicit pci_intx() manipulation from ahci because it seemed unnecessary and ahci doesn't seem to be the right place to be tweaking it if it were. This was largely okay but there are exceptions. There was one on an embedded platform which was fixed via firmware and now bko#14124 reports it on a HP DL320.

http://bugzilla.kernel.org/show_bug.cgi?id=14124

I still think this isn't something libata drivers should be caring about (the only ones which are calling pci_intx() explicitly are libata ones and one other driver) but for now reverting the change seems to be the right thing to do.

---
 drivers/ata/ahci.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/ata/ahci.c +2 -2
index d4cd9c2..acd1162 100644
@@ -2930,8 +2930,8 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 	if (ahci_sb600_32bit_only(pdev))
 		hpriv->flags |= AHCI_HFLAG_32BIT_ONLY;
 
-	if (!(hpriv->flags & AHCI_HFLAG_NO_MSI))
-		pci_enable_msi(pdev);
+	if ((hpriv->flags & AHCI_HFLAG_NO_MSI) || pci_enable_msi(pdev))
+		pci_intx(pdev, 1);
 
 	/* save initial config */
 	ahci_save_initial_config(pdev, hpriv);
#1 lore raw
Quoted 9 lines · Tejun Heo

Commit a5bfc4714b3f01365aef89a92673f2ceb1ccf246 dropped explicit pci_intx() manipulation from ahci because it seemed unnecessary and ahci doesn't seem to be the right place to be tweaking it if it were. This was largely okay but there are exceptions. There was one on an embedded platform which was fixed via firmware and now bko#14124 reports it on a HP DL320.

http://bugzilla.kernel.org/show_bug.cgi?id=14124

Quoted 7 lines

I still think this isn't something libata drivers should be caring about (the only ones which are calling pci_intx() explicitly are libata ones and one other driver) but for now reverting the change seems to be the right thing to do.

In the future, for stuff that you want sent to stable, can you also add:
Cc: stable <[email protected]>
in this signed-off-by area? That way, when the patch hits Linus's tree, we get automatically notified of it and I don't have to dig back through log files to try to find out if your commit has made it in or not.

thanks,

greg "drowning in -stable patches" k-h

author
#2 lore raw
Quoted 5 lines · Greg KH

In the future, for stuff that you want sent to stable, can you also add:
Cc: stable <[email protected]>
in this signed-off-by area? That way, when the patch hits Linus's tree, we get automatically notified of it and I don't have to dig back through log files to try to find out if your commit has made it in or not.

Ah... new protocol. Will do.

Thanks.

Signature · 1 line
tejun
Applied
#3 lore raw
In reply to Tejun Heo
Quoted 14 lines · Tejun Heo

Commit a5bfc4714b3f01365aef89a92673f2ceb1ccf246 dropped explicit pci_intx() manipulation from ahci because it seemed unnecessary and ahci doesn't seem to be the right place to be tweaking it if it were. This was largely okay but there are exceptions. There was one on an embedded platform which was fixed via firmware and now bko#14124 reports it on a HP DL320.

   http://bugzilla.kernel.org/show_bug.cgi?id=14124

I still think this isn't something libata drivers should be caring about (the only ones which are calling pci_intx() explicitly are libata ones and one other driver) but for now reverting the change seems to be the right thing to do.

Quoted 5 lines
---
  drivers/ata/ahci.c |    4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

applied