Skip to contentSkip to conversation

aacraid reset should disable MSI interrupt

SCSI Vasily Averin 3 participants 3 messages Sep 2, 2011

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

scsi reset on hardware with enabled MSI interrupts generates WARNING message

[11027.798722] aacraid: Host adapter abort request (0,0,0,0)
[11027.798814] aacraid: Host adapter reset request. SCSI hang ?
[11087.762237] aacraid: SCSI bus appears hung
[11135.082543] ------------[ cut here ]------------
[11135.082646] WARNING: at drivers/pci/msi.c:658 pci_enable_msi_block+0x251/0x290()
---
 drivers/scsi/aacraid/commsup.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
drivers/scsi/aacraid/commsup.c +2 -0
index e7d0d47..e5f2d7d 100644
@@ -1283,6 +1283,8 @@ static int _aac_reset_adapter(struct aac_dev *aac, int forced)
 	kfree(aac->queues);
 	aac->queues = NULL;
 	free_irq(aac->pdev->irq, aac);
+	if (aac->msi)
+		pci_disable_msi(aac->pdev);
 	kfree(aac->fsa_dev);
 	aac->fsa_dev = NULL;
 	quirks = aac_get_driver_ident(index)->quirks;
Signature · 1 line
1.7.4.1
#1 lore raw

Good Stuff!

Sincerely -- Mark Salyzyn

-----Original Message-----
From: Vasily Averin [mailto:[email protected]]
Sent: Friday, September 02, 2011 11:32 AM
To: [email protected]; [email protected]; Mark Salyzyn
Cc: James Bottomley
Subject: [SCSI] aacraid reset should disable MSI interrupt

scsi reset on hardware with enabled MSI interrupts generates WARNING message

[11027.798722] aacraid: Host adapter abort request (0,0,0,0)
[11027.798814] aacraid: Host adapter reset request. SCSI hang ?
[11087.762237] aacraid: SCSI bus appears hung
[11135.082543] ------------[ cut here ]------------
[11135.082646] WARNING: at drivers/pci/msi.c:658

pci_enable_msi_block+0x251/0x290()

---
 drivers/scsi/aacraid/commsup.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
(quoted diff) +0 -0

b/drivers/scsi/aacraid/commsup.c
index e7d0d47..e5f2d7d 100644

drivers/scsi/aacraid/commsup.c +0 -0
@@ -1283,6 +1283,8 @@ static int _aac_reset_adapter(struct aac_dev *aac,

int forced)
kfree(aac->queues);
aac->queues = NULL; free_irq(aac->pdev->irq, aac);
+ if (aac->msi)
+ pci_disable_msi(aac->pdev);
kfree(aac->fsa_dev);
aac->fsa_dev = NULL;
quirks = aac_get_driver_ident(index)->quirks;

Signature · 12 lines
1.7.4.1


______________________________________________________________________
This email may contain privileged or confidential information, which should only be used for the purpose for which it was sent by Xyratex. No further rights or licenses are granted to use such information. If you are not the intended recipient of this message, please notify the sender by return and delete it. You may not use, copy, disclose or rely on the information contained in it.
 
Internet email is susceptible to data corruption, interception and unauthorised amendment for which Xyratex does not accept liability. While we have taken reasonable precautions to ensure that this email is free of viruses, Xyratex does not accept liability for the presence of any computer viruses in this email, nor for any losses caused as a result of viruses.
 
Xyratex Technology Limited (03134912), Registered in England & Wales, Registered Office, Langstone Road, Havant, Hampshire, PO9 1SA.
 
The Xyratex group of companies also includes, Xyratex Ltd, registered in Bermuda, Xyratex International Inc, registered in California, Xyratex (Malaysia) Sdn Bhd registered in Malaysia, Xyratex Technology (Wuxi) Co Ltd registered in The People's Republic of China and Xyratex Japan Limited registered in Japan.
______________________________________________________________________
maintainer
#2 lore raw
Quoted 3 lines · Mark Salyzyn

Good Stuff!

Sincerely -- Mark Salyzyn

Thanks ... I'm not sure if the new owners are maintaining aacraid at all, so I'll take that as an ack from the former maintainer.

James