diff options
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_attr.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_attr.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/scsi/qla2xxx/qla_attr.c b/drivers/scsi/qla2xxx/qla_attr.c index fee0c493775..e96d58ded57 100644 --- a/drivers/scsi/qla2xxx/qla_attr.c +++ b/drivers/scsi/qla2xxx/qla_attr.c | |||
@@ -46,22 +46,16 @@ qla2x00_sysfs_write_fw_dump(struct kobject *kobj, char *buf, loff_t off, | |||
46 | case 0: | 46 | case 0: |
47 | if (ha->fw_dump_reading == 1) { | 47 | if (ha->fw_dump_reading == 1) { |
48 | qla_printk(KERN_INFO, ha, | 48 | qla_printk(KERN_INFO, ha, |
49 | "Firmware dump cleared on (%ld).\n", | 49 | "Firmware dump cleared on (%ld).\n", ha->host_no); |
50 | ha->host_no); | ||
51 | 50 | ||
52 | vfree(ha->fw_dump_buffer); | 51 | vfree(ha->fw_dump_buffer); |
53 | if (!IS_QLA24XX(ha) && !IS_QLA54XX(ha)) | ||
54 | free_pages((unsigned long)ha->fw_dump, | ||
55 | ha->fw_dump_order); | ||
56 | |||
57 | ha->fw_dump_reading = 0; | ||
58 | ha->fw_dump_buffer = NULL; | 52 | ha->fw_dump_buffer = NULL; |
59 | ha->fw_dump = NULL; | 53 | ha->fw_dump_reading = 0; |
60 | ha->fw_dumped = 0; | 54 | ha->fw_dumped = 0; |
61 | } | 55 | } |
62 | break; | 56 | break; |
63 | case 1: | 57 | case 1: |
64 | if ((ha->fw_dump || ha->fw_dumped) && !ha->fw_dump_reading) { | 58 | if (ha->fw_dumped && !ha->fw_dump_reading) { |
65 | ha->fw_dump_reading = 1; | 59 | ha->fw_dump_reading = 1; |
66 | 60 | ||
67 | if (IS_QLA24XX(ha) || IS_QLA54XX(ha)) | 61 | if (IS_QLA24XX(ha) || IS_QLA54XX(ha)) |