isci: remove sci_device_handle
It belies the fact that isci_remote_device and scic_sds_remote_device
are one in same object with the same lifetime rules.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
diff --git a/drivers/scsi/isci/remote_device.h b/drivers/scsi/isci/remote_device.h
index 48e37cf..cd43c15 100644
--- a/drivers/scsi/isci/remote_device.h
+++ b/drivers/scsi/isci/remote_device.h
@@ -60,7 +60,6 @@
struct scic_sds_remote_device;
struct isci_remote_device {
- struct scic_sds_remote_device *sci_device_handle;
enum isci_status status;
struct isci_port *isci_port;
struct domain_device *domain_dev;
@@ -73,6 +72,12 @@
bool host_quiesce;
};
+static inline struct scic_sds_remote_device *to_sci_dev(struct isci_remote_device *idev)
+{
+ /* core data is an opaque buffer at the end of the idev */
+ return (struct scic_sds_remote_device *) &idev[1];
+}
+
#define to_isci_remote_device(p) \
container_of(p, struct isci_remote_device, sci_remote_device);