X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FBus%2FAta%2FAtaBusDxe%2FAtaBus.c;fp=MdeModulePkg%2FBus%2FAta%2FAtaBusDxe%2FAtaBus.c;h=b113b8d851b298f1eb993afa9d54c70df1300a06;hp=6732fd5e0d38ded84c65e23e5ad6006a16ba934f;hb=71fd9fae8bda10f41a9c6445f01eed82b99883da;hpb=5bcb62a4098c9bde9be6af0833a025adc768e08d diff --git a/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.c b/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.c index 6732fd5e0d..b113b8d851 100644 --- a/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.c +++ b/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.c @@ -90,7 +90,8 @@ ATA_DEVICE gAtaDeviceTemplate = { NULL, // ControllerNameTable {L'\0', }, // ModelName {NULL, NULL}, // AtaTaskList - {NULL, NULL} // AtaSubTaskList + {NULL, NULL}, // AtaSubTaskList + FALSE // Abort }; /** @@ -172,7 +173,7 @@ ReleaseAtaResources ( ) { DelEntry = Entry; Entry = Entry->ForwardLink; - SubTask = ATA_AYNS_SUB_TASK_FROM_ENTRY (DelEntry); + SubTask = ATA_ASYN_SUB_TASK_FROM_ENTRY (DelEntry); RemoveEntryList (DelEntry); FreeAtaSubTask (SubTask); @@ -187,7 +188,7 @@ ReleaseAtaResources ( ) { DelEntry = Entry; Entry = Entry->ForwardLink; - AtaTask = ATA_AYNS_TASK_FROM_ENTRY (DelEntry); + AtaTask = ATA_ASYN_TASK_FROM_ENTRY (DelEntry); RemoveEntryList (DelEntry); FreePool (AtaTask); @@ -1217,6 +1218,8 @@ AtaBlockIoResetEx ( AtaDevice = ATA_DEVICE_FROM_BLOCK_IO2 (This); + AtaTerminateNonBlockingTask (AtaDevice); + Status = ResetAtaDevice (AtaDevice); if (EFI_ERROR (Status)) {