- Removed the spinlock I added in my last patch, it's wrong!

svn path=/trunk/; revision=8579
This commit is contained in:
Filip Navara 2004-03-07 21:09:08 +00:00
parent 11897d4d87
commit c0b4d77eb9

View file

@ -1,4 +1,4 @@
/* $Id: process.c,v 1.125 2004/03/07 20:31:53 navaraf Exp $
/* $Id: process.c,v 1.126 2004/03/07 21:09:08 navaraf Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -55,8 +55,6 @@ static GENERIC_MAPPING PiProcessMapping = {PROCESS_READ,
#define MAX_PROCESS_NOTIFY_ROUTINE_COUNT 8
#define MAX_LOAD_IMAGE_NOTIFY_ROUTINE_COUNT 8
static KSPIN_LOCK PsNotifyListLock;
static PCREATE_PROCESS_NOTIFY_ROUTINE
PiProcessNotifyRoutine[MAX_PROCESS_NOTIFY_ROUTINE_COUNT];
static PLOAD_IMAGE_NOTIFY_ROUTINE
@ -274,7 +272,6 @@ PsInitProcessManagment(VOID)
InitializeListHead(&PsProcessListHead);
KeInitializeSpinLock(&PsProcessListLock);
KeInitializeSpinLock(&PsNotifyListLock);
RtlZeroMemory(PiProcessNotifyRoutine, sizeof(PiProcessNotifyRoutine));
RtlZeroMemory(PiLoadImageNotifyRoutine, sizeof(PiLoadImageNotifyRoutine));
@ -1584,13 +1581,10 @@ PspRunCreateProcessNotifyRoutines
ULONG i;
HANDLE ProcessId = (HANDLE)CurrentProcess->UniqueProcessId;
HANDLE ParentId = CurrentProcess->InheritedFromUniqueProcessId;
KIRQL oldIrql;
KeAcquireSpinLock(&PsNotifyListLock, &oldIrql);
for(i = 0; i < MAX_PROCESS_NOTIFY_ROUTINE_COUNT; ++ i)
if(PiProcessNotifyRoutine[i])
PiProcessNotifyRoutine[i](ParentId, ProcessId, Create);
KeReleaseSpinLock(&PsNotifyListLock, oldIrql);
}
/*
@ -1601,9 +1595,7 @@ PsSetCreateProcessNotifyRoutine(IN PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine,
IN BOOLEAN Remove)
{
ULONG i;
KIRQL oldIrql;
KeAcquireSpinLock(&PsNotifyListLock, &oldIrql);
if (Remove)
{
for(i=0;i<MAX_PROCESS_NOTIFY_ROUTINE_COUNT;i++)
@ -1615,7 +1607,6 @@ PsSetCreateProcessNotifyRoutine(IN PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine,
}
}
KeReleaseSpinLock(&PsNotifyListLock, oldIrql);
return(STATUS_SUCCESS);
}
@ -1629,8 +1620,6 @@ PsSetCreateProcessNotifyRoutine(IN PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine,
}
}
KeReleaseSpinLock(&PsNotifyListLock, oldIrql);
if (i == MAX_PROCESS_NOTIFY_ROUTINE_COUNT)
{
return STATUS_INSUFFICIENT_RESOURCES;
@ -1646,13 +1635,10 @@ PspRunLoadImageNotifyRoutines(
PIMAGE_INFO ImageInfo)
{
ULONG i;
KIRQL oldIrql;
KeAcquireSpinLock(&PsNotifyListLock, &oldIrql);
for (i = 0; i < MAX_PROCESS_NOTIFY_ROUTINE_COUNT; ++ i)
if (PiLoadImageNotifyRoutine[i])
PiLoadImageNotifyRoutine[i](FullImageName, ProcessId, ImageInfo);
KeReleaseSpinLock(&PsNotifyListLock, oldIrql);
}
/*
@ -1662,9 +1648,7 @@ NTSTATUS STDCALL
PsSetLoadImageNotifyRoutine(IN PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine)
{
ULONG i;
KIRQL oldIrql;
KeAcquireSpinLock(&PsNotifyListLock, &oldIrql);
for (i = 0; i < MAX_LOAD_IMAGE_NOTIFY_ROUTINE_COUNT; i++)
{
if (PiLoadImageNotifyRoutine[i] == NULL)
@ -1673,7 +1657,6 @@ PsSetLoadImageNotifyRoutine(IN PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine)
break;
}
}
KeReleaseSpinLock(&PsNotifyListLock, oldIrql);
if (i == MAX_PROCESS_NOTIFY_ROUTINE_COUNT)
{