diff options
author | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2007-01-21 18:25:31 +0000 |
---|---|---|
committer | Thomas Doerfler <Thomas.Doerfler@embedded-brains.de> | 2007-01-21 18:25:31 +0000 |
commit | 3d14a451e96ba84901eae5c140adb403116439f7 (patch) | |
tree | cbcfb83a20a165927f3043b4ed4679b9914ddfd6 /c/src/libchip/ide/ata.c | |
parent | * mvme5500/Makefile.am, mvme5500/preinstall.am, (diff) | |
download | rtems-3d14a451e96ba84901eae5c140adb403116439f7.tar.bz2 |
mproved gen5200 MSCAN driver
fixed synchronization bug between ata.c and bdbuf.c
Diffstat (limited to 'c/src/libchip/ide/ata.c')
-rw-r--r-- | c/src/libchip/ide/ata.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/c/src/libchip/ide/ata.c b/c/src/libchip/ide/ata.c index 6c765262e7..abcd375c62 100644 --- a/c/src/libchip/ide/ata.c +++ b/c/src/libchip/ide/ata.c @@ -528,15 +528,16 @@ ata_request_done(ata_req_t *areq, rtems_device_minor_number ctrl_minor, DISABLE_PREEMPTION(key); ATA_EXEC_CALLBACK(areq, status, error); Chain_Extract(&areq->link); - free(areq); if (!Chain_Is_empty(&ata_ide_ctrls[ctrl_minor].reqs)) { ENABLE_PREEMPTION(key); + free(areq); ata_process_request(ctrl_minor); return; } ENABLE_PREEMPTION(key); + free(areq); } /* ata_non_data_request_done -- |