[ros-dev] [NTDLL/LDR] - Fix a few bugs (wrong variable usage, wrong variable initialization) which led to incorrect snapping of import address table.

Aleksey Bragin aleksey at reactos.org
Tue Mar 29 20:29:24 UTC 2011


Hi Minas,
thanks for watching these commits!

I have a rewrite of all these functions, which would fix this issue,  
however I can't commit it before I fix other code first.

WBR,
Aleksey Bragin.

On Mar 29, 2011, at 5:26 PM, Minas Abrahamyan wrote:

> Hi Alexey,
>
> Since you are still working on these LdrXXX functions then you maybe
> find possibility
> to add there some code to prevent them trapping into infinite cycle  
> (bug 5881:
> http://www.reactos.org/bugzilla/show_bug.cgi?id=5881  )
>
> While booted up with RAM 25 or 24 MB ROS kernel falls into infinite
> cycle there,
> but being booted up with 15 Mbs ROS stalls and and hangs up.
>
> To test it is enough to run it on any VM with 24Mb of RAM.
>
> What occurs there is infinite recursive calls, in form of
> LdrpLoadModule ->calls LdrFixupImports -> LdrpGetOrLoadModule ->
> LdrpLoadModule and so forth.
> (detailed bt is in bug 5881 description).
> Maybe ROS kernel doesn't check memory availability, something like
> XXXMalloc returning NULL or so.
>
> Thanks!
> -M.A.
>
> On Wed, Mar 23, 2011 at 4:25 PM,  <fireball at svn.reactos.org> wrote:
>> Author: fireball
>> Date: Wed Mar 23 12:25:53 2011
>> New Revision: 51123
>>
>> URL: http://svn.reactos.org/svn/reactos?rev=51123&view=rev
>> Log:
>> [NTDLL/LDR]
>> - Fix a few bugs (wrong variable usage, wrong variable  
>> initialization) which led to incorrect snapping of import address  
>> table.
>> - Wrap LdrpSnapThunk() invocations into SEH.
>>
>> Modified:
>>    trunk/reactos/dll/ntdll/ldr/ldrpe.c
>>
>> Modified: trunk/reactos/dll/ntdll/ldr/ldrpe.c
>> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/ntdll/ 
>> ldr/ldrpe.c?rev=51123&r1=51122&r2=51123&view=diff
>
> _______________________________________________
> Ros-dev mailing list
> Ros-dev at reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev




More information about the Ros-dev mailing list