diff options
-rw-r--r-- | MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIo.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIo.c b/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIo.c index 38af39f41e..15dfa3699f 100644 --- a/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIo.c +++ b/MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIo.c @@ -847,6 +847,7 @@ DiskIo2ReadWriteDisk ( DISK_IO_SUBTASK *Subtask;
DISK_IO2_TASK *Task;
EFI_TPL OldTpl;
+ EFI_TPL OldTpl1;
BOOLEAN Blocking;
BOOLEAN SubtaskBlocking;
LIST_ENTRY *SubtasksPtr;
@@ -977,7 +978,7 @@ DiskIo2ReadWriteDisk ( }
}
- gBS->RaiseTPL (TPL_NOTIFY);
+ OldTpl1 = gBS->RaiseTPL (TPL_NOTIFY);
//
// Remove all the remaining subtasks when failure.
@@ -1012,6 +1013,7 @@ DiskIo2ReadWriteDisk ( FreePool (Task);
}
+ gBS->RestoreTPL (OldTpl1);
gBS->RestoreTPL (OldTpl);
return Status;
|