From 0d984ab4e1bf141952fc6f10ed7d6e007687e483 Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Mon, 27 Jun 2011 00:20:47 +0000 Subject: [PATCH] [NTOSKRNL] Use KeRainseIrql and KeLowerIrql instead of the fastcall versions. Fixes amd64 build svn path=/trunk/; revision=52479 --- reactos/ntoskrnl/cache/section/io.c | 74 ++++++++++++++--------------- 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/reactos/ntoskrnl/cache/section/io.c b/reactos/ntoskrnl/cache/section/io.c index 9acf4e26b54..951bd23445f 100644 --- a/reactos/ntoskrnl/cache/section/io.c +++ b/reactos/ntoskrnl/cache/section/io.c @@ -81,7 +81,7 @@ MiSimpleReadComplete MmUnlockPages(Mdl); Mdl = Mdl->Next; } - + /* Check if there's an MDL */ while ((Mdl = Irp->MdlAddress)) { @@ -96,9 +96,9 @@ MiSimpleReadComplete NTSTATUS NTAPI MiSimpleRead -(PFILE_OBJECT FileObject, +(PFILE_OBJECT FileObject, PLARGE_INTEGER FileOffset, - PVOID Buffer, + PVOID Buffer, ULONG Length, #ifdef __ROS_CMAKE__ BOOLEAN Paging, @@ -110,28 +110,28 @@ MiSimpleRead KEVENT ReadWait; PDEVICE_OBJECT DeviceObject; PIO_STACK_LOCATION IrpSp; - + ASSERT(FileObject); ASSERT(FileOffset); ASSERT(Buffer); ASSERT(ReadStatus); - + DeviceObject = MmGetDeviceObjectForFile(FileObject); ReadStatus->Status = STATUS_INTERNAL_ERROR; ReadStatus->Information = 0; - + ASSERT(DeviceObject); DPRINT - ("PAGING READ: FileObject %x <%wZ> Offset %08x%08x Length %d\n", - &FileObject, + ("PAGING READ: FileObject %x <%wZ> Offset %08x%08x Length %d\n", + &FileObject, &FileObject->FileName, FileOffset->HighPart, FileOffset->LowPart, Length); KeInitializeEvent(&ReadWait, NotificationEvent, FALSE); - + Irp = IoBuildAsynchronousFsdRequest (IRP_MJ_READ, DeviceObject, @@ -139,7 +139,7 @@ MiSimpleRead Length, FileOffset, ReadStatus); - + if (!Irp) { return STATUS_NO_MEMORY; @@ -169,10 +169,10 @@ MiSimpleRead DPRINT1("KeWaitForSingleObject(&ReadWait)\n"); if (!NT_SUCCESS (KeWaitForSingleObject - (&ReadWait, - Suspended, - KernelMode, - FALSE, + (&ReadWait, + Suspended, + KernelMode, + FALSE, NULL))) { DPRINT1("Warning: Failed to wait for synchronous IRP\n"); @@ -180,10 +180,10 @@ MiSimpleRead return Status; } } - + DPRINT("Paging IO Done: %08x\n", ReadStatus->Status); - Status = - ReadStatus->Status == STATUS_END_OF_FILE ? + Status = + ReadStatus->Status == STATUS_END_OF_FILE ? STATUS_SUCCESS : ReadStatus->Status; return Status; } @@ -191,9 +191,9 @@ MiSimpleRead NTSTATUS NTAPI _MiSimpleWrite -(PFILE_OBJECT FileObject, +(PFILE_OBJECT FileObject, PLARGE_INTEGER FileOffset, - PVOID Buffer, + PVOID Buffer, ULONG Length, PIO_STATUS_BLOCK ReadStatus, const char *File, @@ -204,24 +204,24 @@ _MiSimpleWrite KEVENT ReadWait; PDEVICE_OBJECT DeviceObject; PIO_STACK_LOCATION IrpSp; - + ASSERT(FileObject); ASSERT(FileOffset); ASSERT(Buffer); ASSERT(ReadStatus); - + ObReferenceObject(FileObject); DeviceObject = MmGetDeviceObjectForFile(FileObject); ASSERT(DeviceObject); - + DPRINT - ("PAGING WRITE: FileObject %x Offset %x Length %d (%s:%d)\n", - &FileObject, + ("PAGING WRITE: FileObject %x Offset %x Length %d (%s:%d)\n", + &FileObject, FileOffset->LowPart, Length, File, Line); - + KeInitializeEvent(&ReadWait, NotificationEvent, FALSE); Irp = IoBuildAsynchronousFsdRequest @@ -231,15 +231,15 @@ _MiSimpleWrite Length, FileOffset, ReadStatus); - + if (!Irp) { ObDereferenceObject(FileObject); return STATUS_NO_MEMORY; } - + Irp->Flags = IRP_PAGING_IO | IRP_SYNCHRONOUS_PAGING_IO | IRP_NOCACHE | IRP_SYNCHRONOUS_API; - + Irp->UserEvent = &ReadWait; Irp->Tail.Overlay.OriginalFileObject = FileObject; Irp->Tail.Overlay.Thread = PsGetCurrentThread(); @@ -247,7 +247,7 @@ _MiSimpleWrite IrpSp->Control |= SL_INVOKE_ON_SUCCESS | SL_INVOKE_ON_ERROR; IrpSp->FileObject = FileObject; IrpSp->CompletionRoutine = MiSimpleReadComplete; - + DPRINT("Call Driver\n"); Status = IoCallDriver(DeviceObject, Irp); DPRINT("Status %x\n", Status); @@ -259,10 +259,10 @@ _MiSimpleWrite DPRINT1("KeWaitForSingleObject(&ReadWait)\n"); if (!NT_SUCCESS (KeWaitForSingleObject - (&ReadWait, - Suspended, - KernelMode, - FALSE, + (&ReadWait, + Suspended, + KernelMode, + FALSE, NULL))) { DPRINT1("Warning: Failed to wait for synchronous IRP\n"); @@ -270,7 +270,7 @@ _MiSimpleWrite return Status; } } - + DPRINT("Paging IO Done: %08x\n", ReadStatus->Status); return ReadStatus->Status; } @@ -296,11 +296,11 @@ _MiWriteBackPage if (!PageBuffer) return STATUS_NO_MEMORY; - OldIrql = KfRaiseIrql(DISPATCH_LEVEL); + KeRaiseIrql(DISPATCH_LEVEL, &OldIrql); Hyperspace = MmCreateHyperspaceMapping(Page); RtlCopyMemory(PageBuffer, Hyperspace, PAGE_SIZE); MmDeleteHyperspaceMapping(Hyperspace); - KfLowerIrql(OldIrql); + KeLowerIrql(OldIrql); DPRINT1("MiWriteBackPage(%wZ,%08x%08x,%s:%d)\n", &FileObject->FileName, FileOffset->u.HighPart, FileOffset->u.LowPart, File, Line); Status = MiSimpleWrite @@ -311,7 +311,7 @@ _MiWriteBackPage &Iosb); ExFreePool(PageBuffer); - + if (!NT_SUCCESS(Status)) { DPRINT1("MiSimpleWrite failed (%x)\n", Status);