[PATCH] libata kfree fix

From: Jeff Garzik
Date: Mon Feb 21 2005 - 17:28:58 EST


Fixes double-kfree that caused slab corruption.

Signed-off-by: Jeff Garzik <jgarzik@xxxxxxxxx> ===== drivers/scsi/libata-core.c 1.116 vs edited =====
--- 1.116/drivers/scsi/libata-core.c 2005-02-01 20:23:51 -05:00
+++ edited/drivers/scsi/libata-core.c 2005-02-20 23:34:32 -05:00
@@ -2800,7 +2800,7 @@
return 1;

/* fall through */
-
+
default:
return 0;
}
@@ -3743,16 +3743,13 @@
if (legacy_mode) {
if (legacy_mode & (1 << 0))
ata_device_add(probe_ent);
- else
- kfree(probe_ent);
if (legacy_mode & (1 << 1))
ata_device_add(probe_ent2);
- else
- kfree(probe_ent2);
- } else {
+ } else
ata_device_add(probe_ent);
- }
+
kfree(probe_ent);
+ kfree(probe_ent2);

return 0;