Actually, here's a better fix.
Jeff
===== 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;