freebsd-dev/sys/dev/ata
Ed Maste 1707b4455f Fix panic after "WARNING - ATA_IDENTIFY taskqueue timeout"
When performing a firmware upgrade via atacontrol[1] the subsequent
command may time out producing the error message above.  When this
happens the callout could still be active, and the system would then
panic due to a destroyed semaphore.

Instead, ensure that the callout is done first, via callout_drain.

Note that this fix applies to the "old" ata(4) and so isn't applicable
to the default configuration in HEAD.  It is still applicable to
stable/8.

[1] http://lists.freebsd.org/pipermail/freebsd-current/2012-January/031122.html

Submitted by:   Nima Misaghian
Reviewed by:    rstone, attilio, mav
Obtained from:  SVOS
MFC after:      3 days
2012-02-13 01:44:12 +00:00
..
chipsets Using ATA_CAM along with ATAPI DMA causes data corruption with ALI_NEW 2012-01-27 21:52:59 +00:00
ata_if.m Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-all.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-all.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-card.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-cbus.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-disk.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-disk.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-dma.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-isa.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-lowlevel.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-pci.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-pci.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-queue.c Fix panic after "WARNING - ATA_IDENTIFY taskqueue timeout" 2012-02-13 01:44:12 +00:00
ata-raid-ddf.h Add basic support for DDF, often found on Adaptec HostRAID controllers. 2009-02-20 06:10:12 +00:00
ata-raid.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-raid.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
ata-sata.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
atapi-cam.c Add the CAM Target Layer (CTL). 2012-01-12 00:34:33 +00:00
atapi-cd.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
atapi-cd.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
atapi-fd.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
atapi-fd.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00
atapi-tape.c Convert files to UTF-8 2012-01-15 13:23:18 +00:00
atapi-tape.h Convert files to UTF-8 2012-01-15 13:23:18 +00:00