[PATCH] libata-hp-prep: make some ata_device fields persistent
authorTejun Heo <htejun@gmail.com>
Wed, 31 May 2006 09:27:32 +0000 (18:27 +0900)
committerTejun Heo <htejun@gmail.com>
Wed, 31 May 2006 09:27:32 +0000 (18:27 +0900)
commit72fa4b742b327bd1b07985d79a61c61dbd9fd4e6
tree50d95fcf58e709b12510151e8e1cae8d8cb2538e
parent3ef3b43d5633d30fa3f033f62094ec2e9c5b8376
[PATCH] libata-hp-prep: make some ata_device fields persistent

Lifetimes of some fields span over device plugging/unplugging.  This
patch moves such persistent fields to the top of ata_device and
separate them with ATA_DEVICE_CLEAR_OFFSET.  Fields above the offset
are initialized once during host initializatino while all other fields
are cleared before hotplugging.  Currently ->ap, devno and part of
flags are persistent.

Note that flags is partially cleared while holding host_set lock.
This is to synchronize with later warm plug implementation which will
record hotplug request in dev->flags.

Signed-off-by: Tejun Heo <htejun@gmail.com>
drivers/scsi/libata-core.c
include/linux/libata.h