[SCSI] sas_ata: Satisfy libata qc function locking requirements
authorDarrick J. Wong <djwong@us.ibm.com>
Tue, 30 Jan 2007 09:18:35 +0000 (01:18 -0800)
committerJames Bottomley <jejb@mulgrave.localdomain>
Wed, 18 Jul 2007 16:14:55 +0000 (11:14 -0500)
commit3eb7a51a3ae0ed0227e051ecf75199fccbb4cc73
tree656ac071a158ad355b936999a30548a1f575d339
parentba330ffebb43c37cabc765c7cb0a80df01554657
[SCSI] sas_ata: Satisfy libata qc function locking requirements

ata_qc_complete and ata_sas_queuecmd require that the port lock be held
when they are called.  sas_ata doesn't do this, leading to BUG messages
about qc tags newly allocated qc tags already being in use.  This patch
fixes the locking, which should clean up the rest of those messages.

So far I've tested this against an IBM x206m with two SATA disks with no
BUG messages and no other signs of things going wrong, and the machine
finally passed the pounder stress test.

Signed-off-by: Darrick J. Wong <djwong@us.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/libsas/sas_ata.c
drivers/scsi/libsas/sas_scsi_host.c