[ros-bugs] [Bug 942] cache_manager_rewrite: Bugcheck when starting Opera 8.51

ReactOS.Bugzilla at reactos.org ReactOS.Bugzilla at reactos.org
Sun Apr 2 20:51:51 CEST 2006


http://www.reactos.org/bugzilla/show_bug.cgi?id=942





------- Additional Comments From maarten.paul at bosma.de  2006-04-02 20:51 CET -------
So here is what happens in a nutshell:

a) The cache manager creates MEMORY_AREA_CACHE_SEGMENT 

b) Later it maps a address rage in that area, but does not attached a page 
c) Then it accesses that address
d) because there is not page attached yet a page fault occurs
e) KiTrap8 => KiPageFaultHandler => MmNotPresentFault =>
MmNotPresentFaultSectionView => MmspNotPresentFaultDataFileSectionView =>
MmspReadSectionSegmentPages => MmspRequestPages 
f) MmspRequestPages calls MmRequestPageMemoryConsumer to request pages of type
MC_USER

g) When reactos get low on memory it calls MmTrimUserMemory which uses
MmPageOutPhysicalAddress with our page as parameter
h) MmPageOutPhysicalAddress bugchecks because it does not know about
MEMORY_AREA_CACHE_SEGMENT 

So the possible fixes would be
a) make the page fault handler create memory with MC_CACHE
b) make the cache manger request the pages instead of the page fault handler

I have a patch for a) but Alex said that is would be a hack.

-- 
Configure bugmail: http://www.reactos.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
You are the QA contact for the bug, or are watching the QA contact.


More information about the Ros-bugs mailing list