diff options
Diffstat (limited to 'drivers/scsi/ipr.c')
-rw-r--r-- | drivers/scsi/ipr.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/scsi/ipr.c b/drivers/scsi/ipr.c index 520461b9bc09..6a6661c35b2f 100644 --- a/drivers/scsi/ipr.c +++ b/drivers/scsi/ipr.c | |||
@@ -3120,6 +3120,7 @@ restart: | |||
3120 | #ifdef CONFIG_SCSI_IPR_TRACE | 3120 | #ifdef CONFIG_SCSI_IPR_TRACE |
3121 | /** | 3121 | /** |
3122 | * ipr_read_trace - Dump the adapter trace | 3122 | * ipr_read_trace - Dump the adapter trace |
3123 | * @filp: open sysfs file | ||
3123 | * @kobj: kobject struct | 3124 | * @kobj: kobject struct |
3124 | * @bin_attr: bin_attribute struct | 3125 | * @bin_attr: bin_attribute struct |
3125 | * @buf: buffer | 3126 | * @buf: buffer |
@@ -3129,7 +3130,7 @@ restart: | |||
3129 | * Return value: | 3130 | * Return value: |
3130 | * number of bytes printed to buffer | 3131 | * number of bytes printed to buffer |
3131 | **/ | 3132 | **/ |
3132 | static ssize_t ipr_read_trace(struct kobject *kobj, | 3133 | static ssize_t ipr_read_trace(struct file *filp, struct kobject *kobj, |
3133 | struct bin_attribute *bin_attr, | 3134 | struct bin_attribute *bin_attr, |
3134 | char *buf, loff_t off, size_t count) | 3135 | char *buf, loff_t off, size_t count) |
3135 | { | 3136 | { |
@@ -3764,6 +3765,7 @@ static struct device_attribute *ipr_ioa_attrs[] = { | |||
3764 | #ifdef CONFIG_SCSI_IPR_DUMP | 3765 | #ifdef CONFIG_SCSI_IPR_DUMP |
3765 | /** | 3766 | /** |
3766 | * ipr_read_dump - Dump the adapter | 3767 | * ipr_read_dump - Dump the adapter |
3768 | * @filp: open sysfs file | ||
3767 | * @kobj: kobject struct | 3769 | * @kobj: kobject struct |
3768 | * @bin_attr: bin_attribute struct | 3770 | * @bin_attr: bin_attribute struct |
3769 | * @buf: buffer | 3771 | * @buf: buffer |
@@ -3773,7 +3775,7 @@ static struct device_attribute *ipr_ioa_attrs[] = { | |||
3773 | * Return value: | 3775 | * Return value: |
3774 | * number of bytes printed to buffer | 3776 | * number of bytes printed to buffer |
3775 | **/ | 3777 | **/ |
3776 | static ssize_t ipr_read_dump(struct kobject *kobj, | 3778 | static ssize_t ipr_read_dump(struct file *filp, struct kobject *kobj, |
3777 | struct bin_attribute *bin_attr, | 3779 | struct bin_attribute *bin_attr, |
3778 | char *buf, loff_t off, size_t count) | 3780 | char *buf, loff_t off, size_t count) |
3779 | { | 3781 | { |
@@ -3927,6 +3929,7 @@ static int ipr_free_dump(struct ipr_ioa_cfg *ioa_cfg) | |||
3927 | 3929 | ||
3928 | /** | 3930 | /** |
3929 | * ipr_write_dump - Setup dump state of adapter | 3931 | * ipr_write_dump - Setup dump state of adapter |
3932 | * @filp: open sysfs file | ||
3930 | * @kobj: kobject struct | 3933 | * @kobj: kobject struct |
3931 | * @bin_attr: bin_attribute struct | 3934 | * @bin_attr: bin_attribute struct |
3932 | * @buf: buffer | 3935 | * @buf: buffer |
@@ -3936,7 +3939,7 @@ static int ipr_free_dump(struct ipr_ioa_cfg *ioa_cfg) | |||
3936 | * Return value: | 3939 | * Return value: |
3937 | * number of bytes printed to buffer | 3940 | * number of bytes printed to buffer |
3938 | **/ | 3941 | **/ |
3939 | static ssize_t ipr_write_dump(struct kobject *kobj, | 3942 | static ssize_t ipr_write_dump(struct file *filp, struct kobject *kobj, |
3940 | struct bin_attribute *bin_attr, | 3943 | struct bin_attribute *bin_attr, |
3941 | char *buf, loff_t off, size_t count) | 3944 | char *buf, loff_t off, size_t count) |
3942 | { | 3945 | { |
@@ -4295,7 +4298,7 @@ static void ipr_slave_destroy(struct scsi_device *sdev) | |||
4295 | res = (struct ipr_resource_entry *) sdev->hostdata; | 4298 | res = (struct ipr_resource_entry *) sdev->hostdata; |
4296 | if (res) { | 4299 | if (res) { |
4297 | if (res->sata_port) | 4300 | if (res->sata_port) |
4298 | ata_port_disable(res->sata_port->ap); | 4301 | res->sata_port->ap->link.device[0].class = ATA_DEV_NONE; |
4299 | sdev->hostdata = NULL; | 4302 | sdev->hostdata = NULL; |
4300 | res->sdev = NULL; | 4303 | res->sdev = NULL; |
4301 | res->sata_port = NULL; | 4304 | res->sata_port = NULL; |
@@ -5751,13 +5754,13 @@ static void ipr_ata_phy_reset(struct ata_port *ap) | |||
5751 | rc = ipr_device_reset(ioa_cfg, res); | 5754 | rc = ipr_device_reset(ioa_cfg, res); |
5752 | 5755 | ||
5753 | if (rc) { | 5756 | if (rc) { |
5754 | ata_port_disable(ap); | 5757 | ap->link.device[0].class = ATA_DEV_NONE; |
5755 | goto out_unlock; | 5758 | goto out_unlock; |
5756 | } | 5759 | } |
5757 | 5760 | ||
5758 | ap->link.device[0].class = res->ata_class; | 5761 | ap->link.device[0].class = res->ata_class; |
5759 | if (ap->link.device[0].class == ATA_DEV_UNKNOWN) | 5762 | if (ap->link.device[0].class == ATA_DEV_UNKNOWN) |
5760 | ata_port_disable(ap); | 5763 | ap->link.device[0].class = ATA_DEV_NONE; |
5761 | 5764 | ||
5762 | out_unlock: | 5765 | out_unlock: |
5763 | spin_unlock_irqrestore(ioa_cfg->host->host_lock, flags); | 5766 | spin_unlock_irqrestore(ioa_cfg->host->host_lock, flags); |