[ros-kernel] Q2 Bug (210 in bugzilla) Fix or bigger bug?
Hartmut Birr
hartmut.birr at gmx.de
Thu Mar 4 00:41:02 CET 2004
Hi,
I think that the stack trace is ok. At the end of the read request there
is called IoReadWriteCompletion which copies the status to a user
buffer. This buffer is paged out and triggers a pagin operation which
results in a second call into vfat. IoReadWriteCompletion is called from
an apc (see the old debug message from vfat). Your system freez because
it is in a low memory situation. Currently ros can't handle low memory
situations. It runs in a deadlock where one user page is switched
between two threads over a page in/out operations.
- Hartmut
> (misc.c:135) Vfat is entered at irql = 1
> Bug detected (code 29a param 0 0 0 0) <---- I putted this
> in order to
> get the stack trace because I'm inside a driver
> No message text found!
> Pid: 9 <quake2> Thrd: c13d7988 Tid: 30
> Frames: <ntoskrnl.exe: 971b> KeBugCheck ( I did this :) )
> <vfatfs: b326> VfatBuildRequest <----------
> <ntoskrnl.exe: 30417> IofCallDriver |
> <ntoskrnl.exe: 3133c> IoPageRead |
> <ntoskrnl.exe: 45b43> MmReadFromSwapPage |
> <ntoskrnl.exe: 5306b> MmNotPresentFaultVirtualMemory |
> <ntoskrnl.exe: 43084> MmNotPresentFault |
> <ntoskrnl.exe: 7d2d> ExAllocatePagedPoolWithTag |
ExAllocatePagedPoolWithTag ? Should be MmPageFault.
> <ntoskrnl.exe: 1df1> KiTrapHandler |---- Hmmm 2
> times?!
> <ntoskrnl.exe: 3031> KiTrapProlog |
> <ntoskrnl.exe: 5bc1> MmSafeCopyToUserUnsafeStart |
> <ntoskrnl.exe: 2a997> IoSecondStageCompletion |
> <ntoskrnl.exe: 3082c> IofCompleteRequest |
> <ntoskrnl.exe: 3085c> IoCompleteRequest |
> <vfatfs: 9eac> VfatRead |
> <vfatfs: b2cd> VfatBuildRequest <----------
> <ntoskrnl.exe: 30417> IofCallDriver
> <ntoskrnl.exe: 3042d> IoCallDriver
> <ntoskrnl.exe: 35acd> NtReadFile
> <ntoskrnl.exe: 32ac> new_serviceInRange
> When it is copied to the Buffer in the paged pool the IRQL is
> still the
> same! And seems there was a page not present in memory while the file
> was being loaded. This got to be a bug. Any Ideas where is
> this bug?
More information about the Ros-kernel
mailing list