aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_attr.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_attr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_attr.c12
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))