summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata/ata-all.h
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2009-02-21 22:57:26 +0000
committermav <mav@FreeBSD.org>2009-02-21 22:57:26 +0000
commit96ec4168f2218b750f2e2abc983bf68587558543 (patch)
tree909b6034836014a4e73129dfe977ccd6e2eccf93 /sys/dev/ata/ata-all.h
parent41927ea850d01215f1756c16d1bfa55f20e9fdbc (diff)
downloadFreeBSD-src-96ec4168f2218b750f2e2abc983bf68587558543.zip
FreeBSD-src-96ec4168f2218b750f2e2abc983bf68587558543.tar.gz
Improve ata_reinit():
- protect againtst recursions, - add new devices detection using ata_identify(). Improve ata_identify(): - do not add duplicate device if device already exist. Rework SATA hot-plug events handling. Instead of unsafe duplicate implementation use common ata_reinit() to handle all state changes. All together this gives quite stable and robust cold- and hot-plug operation, invariant to false, lost and duplicate events.
Diffstat (limited to 'sys/dev/ata/ata-all.h')
-rw-r--r--sys/dev/ata/ata-all.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/dev/ata/ata-all.h b/sys/dev/ata/ata-all.h
index 4e47f82..a721d80 100644
--- a/sys/dev/ata/ata-all.h
+++ b/sys/dev/ata/ata-all.h
@@ -530,6 +530,7 @@ struct ata_channel {
TAILQ_HEAD(, ata_request) ata_queue; /* head of ATA queue */
struct ata_request *freezepoint; /* composite freezepoint */
struct ata_request *running; /* currently running request */
+ struct task conntask; /* PHY events handling task */
};
/* disk bay/enclosure related */
OpenPOWER on IntegriCloud