Harmut,
A new edition of the debug messages but this time with a "Kebugcheck" in mm/npool.c as requested
Regards Gerard
(mm/mdl.c:898) UserMode mapping - returning 0x441000 (mm/npool.c:1626) Trying to allocate 262144 bytes from nonpaged pool - nothing suitable found, returning NULL KeBugCheck at mm/npool.c:1627 (int10.c:158) IntInt10CallBios (int10.c:163) - Input register Eax: 4f02 (int10.c:165) - Input register Ebx: 3 (int10.c:167) - Input register Ecx: 0 (int10.c:169) - Input register Edx: 0 (int10.c:171) - Input register Esi: 0 (int10.c:173) - Input register Edi: 0 (int10.c:175) - Input register Ebp: 0 (int10.c:177) - Input register SegDs: 0 (int10.c:179) - Input register SegEs: 0 (int10.c:158) IntInt10CallBios (int10.c:163) - Input register Eax: 1112 (int10.c:165) - Input register Ebx: 0 (int10.c:167) - Input register Ecx: 0 (int10.c:169) - Input register Edx: 0 (int10.c:171) - Input register Esi: 0 (int10.c:173) - Input register Edi: 0 (int10.c:175) - Input register Ebp: 0 (int10.c:177) - Input register SegDs: 0 (int10.c:179) - Input register SegEs: 0 A problem has been detected and ReactOS has been shut down to prevent damage to your computer.
The bug code is undefined. Please use an existing code instead.
Technical information:
*** STOP: 0x00000000 (0x00000000,0x00000000,0x00000000,0x00000000)
Frames: <ntoskrnl.exe:d80d (ke/bug.c:459 (KeBugCheckEx))> <ntoskrnl.exe:d82d (ke/bug.c:479 (KeBugCheck))> <ntoskrnl.exe:708c8 (mm/npool.c:1627 (ExAllocateNonPagedPoolWithTag))> <ntoskrnl.exe:75b69 (mm/pool.c:47 (EiAllocatePool))> <ntoskrnl.exe:75bee (mm/pool.c:102 (ExAllocatePool))> <npfs.sys:1a20 (create.c:459 (NpfsCreateNamedPipe))> <ntoskrnl.exe:4e927 (io/irp.c:211 (IofCallDriver))> <ntoskrnl.exe:455ae (io/create.c:560 (IoCreateFile))> <ntoskrnl.exe:50150 (io/npipe.c:60 (NtCreateNamedPipeFile))> <ntoskrnl.exe:3bf2 (C:\DOCUME~1\home\LOCALS~1\Temp/ccy8aaaa.s:178 (KiSystemService))> <kernel32.dll:2d6ef (file/npipe.c:185 (CreateNamedPipeW))>
KeBugCheckWithTf at ke/catch.c:224 A problem has been detected and ReactOS has been shut down to prevent damage to your computer.
The problem seems to be caused by the following file: ntoskrnl.exe
KMODE_EXCEPTION_NOT_HANDLED
Technical information:
*** STOP: 0x0000001E (0x80000003,0x8000608f,0x00000000,0x00000000)
*** ntoskrnl.exe - Address 0x8000608f base at 0x80000000, DateStamp 0x0
Gge schrieb:
Harmut,
I'm missing my first t ;-) .
A new edition of the debug messages but this time with a "Kebugcheck" in mm/npool.c as requested
Regards Gerard
(mm/mdl.c:898) UserMode mapping - returning 0x441000 (mm/npool.c:1626) Trying to allocate 262144 bytes from nonpaged pool - nothing suitable found, returning NULL KeBugCheck at mm/npool.c:1627
Frames: <ntoskrnl.exe:d80d (ke/bug.c:459 (KeBugCheckEx))> <ntoskrnl.exe:d82d (ke/bug.c:479 (KeBugCheck))> <ntoskrnl.exe:708c8 (mm/npool.c:1627 (ExAllocateNonPagedPoolWithTag))> <ntoskrnl.exe:75b69 (mm/pool.c:47 (EiAllocatePool))> <ntoskrnl.exe:75bee (mm/pool.c:102 (ExAllocatePool))> <npfs.sys:1a20 (create.c:459 (NpfsCreateNamedPipe))>
This means colinux creates many pipes. Our npfs driver allocates the memory from non paged pool and possible it does not limit the size of the pipe buffer. I'm not sure if colinux creates to much pipes or if there is anywhere a bug which prevents from closing unused pipes (in colinux or ros).
- Hartmut
Hartmut Birr schrieb:
This means colinux creates many pipes. Our npfs driver allocates the memory from non paged pool and possible it does not limit the size of the pipe buffer. I'm not sure if colinux creates to much pipes or if there is anywhere a bug which prevents from closing unused pipes (in colinux or ros).
Hi Gerard,
can you add my little patch and check how many pipes are created when colinux is started?
- Hartmut
M:\Sandbox\ros_work\reactos>set SVN_EDITOR=notepad
M:\Sandbox\ros_work\reactos>d:\programme\subversion\bin\svn.exe diff drivers\fs\np Index: drivers/fs/np/create.c =================================================================== --- drivers/fs/np/create.c (revision 14100) +++ drivers/fs/np/create.c (working copy) @@ -16,6 +16,8 @@ #define NDEBUG #include <debug.h>
+static ULONG PipeCount = 0; + /* FUNCTIONS *****************************************************************/
static PNPFS_PIPE @@ -451,6 +453,8 @@ }
InsertTailList(&DeviceExt->PipeListHead, &Pipe->PipeListEntry); + PipeCount++; + DPRINT1("PipeCount: %d\n", PipeCount); KeUnlockMutex(&DeviceExt->PipeListLock); }
@@ -460,9 +464,12 @@ if (Fcb->Data == NULL) { ExFreePool(Fcb); - if (NewPipe) { + /* + * FIXME: + * Lock the pipelist and remove the pipe from the list. + */ RtlFreeUnicodeString(&Pipe->PipeName); ExFreePool(Pipe); } @@ -592,6 +599,7 @@ RtlFreeUnicodeString(&Pipe->PipeName); KeLockMutex(&DeviceExt->PipeListLock); RemoveEntryList(&Pipe->PipeListEntry); + PipeCount--; KeUnlockMutex(&DeviceExt->PipeListLock); ExFreePool(Pipe); }
Hartmut Birr wrote:
Hartmut Birr schrieb:
This means colinux creates many pipes. Our npfs driver allocates the memory from non paged pool and possible it does not limit the size of the pipe buffer. I'm not sure if colinux creates to much pipes or if there is anywhere a bug which prevents from closing unused pipes (in colinux or ros).
Hi Gerard,
can you add my little patch and check how many pipes are created when colinux is started?
- Hartmut
Hi Harmut,
I have updated first my local tree to svn 14117 and built ros with your additional patch.
Please find the debug traces in this link http://edou4ever.free.fr/gge/reactos/Colinux_8.txt
Note 1 : Ntoskrnl is not "bugchecking" anymore with this svn version as before , A cmd window opens but i see only the title bar.
Regards Gerard
Gge schrieb:
Please find the debug traces in this link http://edou4ever.free.fr/gge/reactos/Colinux_8.txt
Looking in the debug output, I found:
PacketGetAdapterNames: BufferSize=2089858495
This comes from lib/packet/packet32.c line #1387. Someone calls PacketGetAdapterNames with a 2GB buffer?
- Hartmut